From 55bdb1db20b1c5447d2c3241dc3d888816fcef83 Mon Sep 17 00:00:00 2001 From: Fureniku Date: Thu, 16 Nov 2023 22:18:04 +0000 Subject: [PATCH] 1.20 Rewrite begins. --- .gitattributes | 5 + .github/workflows/build.yml | 24 + .gitignore | 6 +- build.gradle | 223 ++-- gradle.properties | 59 +- gradle/wrapper/gradle-wrapper.jar | Bin 54708 -> 61574 bytes gradle/wrapper/gradle-wrapper.properties | 3 +- gradlew | 292 +++-- gradlew.bat | 56 +- settings.gradle | 14 +- .../furenikusroads/blockstates/cement.json | 7 + .../furenikusroads/blockstates/clinker.json | 7 + .../blockstates/crushed_rock.json | 7 + .../blockstates/dirt_road_1.json | 7 + .../blockstates/dirt_road_10.json | 7 + .../blockstates/dirt_road_11.json | 7 + .../blockstates/dirt_road_12.json | 7 + .../blockstates/dirt_road_13.json | 7 + .../blockstates/dirt_road_14.json | 7 + .../blockstates/dirt_road_15.json | 7 + .../blockstates/dirt_road_16.json | 7 + .../blockstates/dirt_road_2.json | 7 + .../blockstates/dirt_road_3.json | 7 + .../blockstates/dirt_road_4.json | 7 + .../blockstates/dirt_road_5.json | 7 + .../blockstates/dirt_road_6.json | 7 + .../blockstates/dirt_road_7.json | 7 + .../blockstates/dirt_road_8.json | 7 + .../blockstates/dirt_road_9.json | 7 + .../blockstates/grass_road_1.json | 7 + .../blockstates/grass_road_10.json | 7 + .../blockstates/grass_road_11.json | 7 + .../blockstates/grass_road_12.json | 7 + .../blockstates/grass_road_13.json | 7 + .../blockstates/grass_road_14.json | 7 + .../blockstates/grass_road_15.json | 7 + .../blockstates/grass_road_16.json | 7 + .../blockstates/grass_road_2.json | 7 + .../blockstates/grass_road_3.json | 7 + .../blockstates/grass_road_4.json | 7 + .../blockstates/grass_road_5.json | 7 + .../blockstates/grass_road_6.json | 7 + .../blockstates/grass_road_7.json | 7 + .../blockstates/grass_road_8.json | 7 + .../blockstates/grass_road_9.json | 7 + .../blockstates/gravel_road_1.json | 7 + .../blockstates/gravel_road_10.json | 7 + .../blockstates/gravel_road_11.json | 7 + .../blockstates/gravel_road_12.json | 7 + .../blockstates/gravel_road_13.json | 7 + .../blockstates/gravel_road_14.json | 7 + .../blockstates/gravel_road_15.json | 7 + .../blockstates/gravel_road_16.json | 7 + .../blockstates/gravel_road_2.json | 7 + .../blockstates/gravel_road_3.json | 7 + .../blockstates/gravel_road_4.json | 7 + .../blockstates/gravel_road_5.json | 7 + .../blockstates/gravel_road_6.json | 7 + .../blockstates/gravel_road_7.json | 7 + .../blockstates/gravel_road_8.json | 7 + .../blockstates/gravel_road_9.json | 7 + .../furenikusroads/blockstates/limestone.json | 7 + .../blockstates/road_block_blue_1.json | 7 + .../blockstates/road_block_blue_10.json | 7 + .../blockstates/road_block_blue_11.json | 7 + .../blockstates/road_block_blue_12.json | 7 + .../blockstates/road_block_blue_13.json | 7 + .../blockstates/road_block_blue_14.json | 7 + .../blockstates/road_block_blue_15.json | 7 + .../blockstates/road_block_blue_16.json | 7 + .../blockstates/road_block_blue_2.json | 7 + .../blockstates/road_block_blue_3.json | 7 + .../blockstates/road_block_blue_4.json | 7 + .../blockstates/road_block_blue_5.json | 7 + .../blockstates/road_block_blue_6.json | 7 + .../blockstates/road_block_blue_7.json | 7 + .../blockstates/road_block_blue_8.json | 7 + .../blockstates/road_block_blue_9.json | 7 + .../blockstates/road_block_concrete_1_1.json | 7 + .../blockstates/road_block_concrete_1_10.json | 7 + .../blockstates/road_block_concrete_1_11.json | 7 + .../blockstates/road_block_concrete_1_12.json | 7 + .../blockstates/road_block_concrete_1_13.json | 7 + .../blockstates/road_block_concrete_1_14.json | 7 + .../blockstates/road_block_concrete_1_15.json | 7 + .../blockstates/road_block_concrete_1_16.json | 7 + .../blockstates/road_block_concrete_1_2.json | 7 + .../blockstates/road_block_concrete_1_3.json | 7 + .../blockstates/road_block_concrete_1_4.json | 7 + .../blockstates/road_block_concrete_1_5.json | 7 + .../blockstates/road_block_concrete_1_6.json | 7 + .../blockstates/road_block_concrete_1_7.json | 7 + .../blockstates/road_block_concrete_1_8.json | 7 + .../blockstates/road_block_concrete_1_9.json | 7 + .../blockstates/road_block_concrete_2_1.json | 7 + .../blockstates/road_block_concrete_2_10.json | 7 + .../blockstates/road_block_concrete_2_11.json | 7 + .../blockstates/road_block_concrete_2_12.json | 7 + .../blockstates/road_block_concrete_2_13.json | 7 + .../blockstates/road_block_concrete_2_14.json | 7 + .../blockstates/road_block_concrete_2_15.json | 7 + .../blockstates/road_block_concrete_2_16.json | 7 + .../blockstates/road_block_concrete_2_2.json | 7 + .../blockstates/road_block_concrete_2_3.json | 7 + .../blockstates/road_block_concrete_2_4.json | 7 + .../blockstates/road_block_concrete_2_5.json | 7 + .../blockstates/road_block_concrete_2_6.json | 7 + .../blockstates/road_block_concrete_2_7.json | 7 + .../blockstates/road_block_concrete_2_8.json | 7 + .../blockstates/road_block_concrete_2_9.json | 7 + .../blockstates/road_block_dark_1.json | 7 + .../blockstates/road_block_dark_10.json | 7 + .../blockstates/road_block_dark_11.json | 7 + .../blockstates/road_block_dark_12.json | 7 + .../blockstates/road_block_dark_13.json | 7 + .../blockstates/road_block_dark_14.json | 7 + .../blockstates/road_block_dark_15.json | 7 + .../blockstates/road_block_dark_16.json | 7 + .../blockstates/road_block_dark_2.json | 7 + .../blockstates/road_block_dark_3.json | 7 + .../blockstates/road_block_dark_4.json | 7 + .../blockstates/road_block_dark_5.json | 7 + .../blockstates/road_block_dark_6.json | 7 + .../blockstates/road_block_dark_7.json | 7 + .../blockstates/road_block_dark_8.json | 7 + .../blockstates/road_block_dark_9.json | 7 + .../blockstates/road_block_fine_1.json | 7 + .../blockstates/road_block_fine_10.json | 7 + .../blockstates/road_block_fine_11.json | 7 + .../blockstates/road_block_fine_12.json | 7 + .../blockstates/road_block_fine_13.json | 7 + .../blockstates/road_block_fine_14.json | 7 + .../blockstates/road_block_fine_15.json | 7 + .../blockstates/road_block_fine_16.json | 7 + .../blockstates/road_block_fine_2.json | 7 + .../blockstates/road_block_fine_3.json | 7 + .../blockstates/road_block_fine_4.json | 7 + .../blockstates/road_block_fine_5.json | 7 + .../blockstates/road_block_fine_6.json | 7 + .../blockstates/road_block_fine_7.json | 7 + .../blockstates/road_block_fine_8.json | 7 + .../blockstates/road_block_fine_9.json | 7 + .../blockstates/road_block_green_1.json | 7 + .../blockstates/road_block_green_10.json | 7 + .../blockstates/road_block_green_11.json | 7 + .../blockstates/road_block_green_12.json | 7 + .../blockstates/road_block_green_13.json | 7 + .../blockstates/road_block_green_14.json | 7 + .../blockstates/road_block_green_15.json | 7 + .../blockstates/road_block_green_16.json | 7 + .../blockstates/road_block_green_2.json | 7 + .../blockstates/road_block_green_3.json | 7 + .../blockstates/road_block_green_4.json | 7 + .../blockstates/road_block_green_5.json | 7 + .../blockstates/road_block_green_6.json | 7 + .../blockstates/road_block_green_7.json | 7 + .../blockstates/road_block_green_8.json | 7 + .../blockstates/road_block_green_9.json | 7 + .../blockstates/road_block_light_1.json | 7 + .../blockstates/road_block_light_10.json | 7 + .../blockstates/road_block_light_11.json | 7 + .../blockstates/road_block_light_12.json | 7 + .../blockstates/road_block_light_13.json | 7 + .../blockstates/road_block_light_14.json | 7 + .../blockstates/road_block_light_15.json | 7 + .../blockstates/road_block_light_16.json | 7 + .../blockstates/road_block_light_2.json | 7 + .../blockstates/road_block_light_3.json | 7 + .../blockstates/road_block_light_4.json | 7 + .../blockstates/road_block_light_5.json | 7 + .../blockstates/road_block_light_6.json | 7 + .../blockstates/road_block_light_7.json | 7 + .../blockstates/road_block_light_8.json | 7 + .../blockstates/road_block_light_9.json | 7 + .../blockstates/road_block_muddy_1.json | 7 + .../blockstates/road_block_muddy_10.json | 7 + .../blockstates/road_block_muddy_11.json | 7 + .../blockstates/road_block_muddy_12.json | 7 + .../blockstates/road_block_muddy_13.json | 7 + .../blockstates/road_block_muddy_14.json | 7 + .../blockstates/road_block_muddy_15.json | 7 + .../blockstates/road_block_muddy_16.json | 7 + .../blockstates/road_block_muddy_2.json | 7 + .../blockstates/road_block_muddy_3.json | 7 + .../blockstates/road_block_muddy_4.json | 7 + .../blockstates/road_block_muddy_5.json | 7 + .../blockstates/road_block_muddy_6.json | 7 + .../blockstates/road_block_muddy_7.json | 7 + .../blockstates/road_block_muddy_8.json | 7 + .../blockstates/road_block_muddy_9.json | 7 + .../blockstates/road_block_muddy_dried_1.json | 7 + .../road_block_muddy_dried_10.json | 7 + .../road_block_muddy_dried_11.json | 7 + .../road_block_muddy_dried_12.json | 7 + .../road_block_muddy_dried_13.json | 7 + .../road_block_muddy_dried_14.json | 7 + .../road_block_muddy_dried_15.json | 7 + .../road_block_muddy_dried_16.json | 7 + .../blockstates/road_block_muddy_dried_2.json | 7 + .../blockstates/road_block_muddy_dried_3.json | 7 + .../blockstates/road_block_muddy_dried_4.json | 7 + .../blockstates/road_block_muddy_dried_5.json | 7 + .../blockstates/road_block_muddy_dried_6.json | 7 + .../blockstates/road_block_muddy_dried_7.json | 7 + .../blockstates/road_block_muddy_dried_8.json | 7 + .../blockstates/road_block_muddy_dried_9.json | 7 + .../blockstates/road_block_pale_1.json | 7 + .../blockstates/road_block_pale_10.json | 7 + .../blockstates/road_block_pale_11.json | 7 + .../blockstates/road_block_pale_12.json | 7 + .../blockstates/road_block_pale_13.json | 7 + .../blockstates/road_block_pale_14.json | 7 + .../blockstates/road_block_pale_15.json | 7 + .../blockstates/road_block_pale_16.json | 7 + .../blockstates/road_block_pale_2.json | 7 + .../blockstates/road_block_pale_3.json | 7 + .../blockstates/road_block_pale_4.json | 7 + .../blockstates/road_block_pale_5.json | 7 + .../blockstates/road_block_pale_6.json | 7 + .../blockstates/road_block_pale_7.json | 7 + .../blockstates/road_block_pale_8.json | 7 + .../blockstates/road_block_pale_9.json | 7 + .../blockstates/road_block_red_1.json | 7 + .../blockstates/road_block_red_10.json | 7 + .../blockstates/road_block_red_11.json | 7 + .../blockstates/road_block_red_12.json | 7 + .../blockstates/road_block_red_13.json | 7 + .../blockstates/road_block_red_14.json | 7 + .../blockstates/road_block_red_15.json | 7 + .../blockstates/road_block_red_16.json | 7 + .../blockstates/road_block_red_2.json | 7 + .../blockstates/road_block_red_3.json | 7 + .../blockstates/road_block_red_4.json | 7 + .../blockstates/road_block_red_5.json | 7 + .../blockstates/road_block_red_6.json | 7 + .../blockstates/road_block_red_7.json | 7 + .../blockstates/road_block_red_8.json | 7 + .../blockstates/road_block_red_9.json | 7 + .../blockstates/road_block_standard_1.json | 7 + .../blockstates/road_block_standard_10.json | 7 + .../blockstates/road_block_standard_11.json | 7 + .../blockstates/road_block_standard_12.json | 7 + .../blockstates/road_block_standard_13.json | 7 + .../blockstates/road_block_standard_14.json | 7 + .../blockstates/road_block_standard_15.json | 7 + .../blockstates/road_block_standard_16.json | 7 + .../blockstates/road_block_standard_2.json | 7 + .../blockstates/road_block_standard_3.json | 7 + .../blockstates/road_block_standard_4.json | 7 + .../blockstates/road_block_standard_5.json | 7 + .../blockstates/road_block_standard_6.json | 7 + .../blockstates/road_block_standard_7.json | 7 + .../blockstates/road_block_standard_8.json | 7 + .../blockstates/road_block_standard_9.json | 7 + .../blockstates/road_block_white_1.json | 7 + .../blockstates/road_block_white_10.json | 7 + .../blockstates/road_block_white_11.json | 7 + .../blockstates/road_block_white_12.json | 7 + .../blockstates/road_block_white_13.json | 7 + .../blockstates/road_block_white_14.json | 7 + .../blockstates/road_block_white_15.json | 7 + .../blockstates/road_block_white_16.json | 7 + .../blockstates/road_block_white_2.json | 7 + .../blockstates/road_block_white_3.json | 7 + .../blockstates/road_block_white_4.json | 7 + .../blockstates/road_block_white_5.json | 7 + .../blockstates/road_block_white_6.json | 7 + .../blockstates/road_block_white_7.json | 7 + .../blockstates/road_block_white_8.json | 7 + .../blockstates/road_block_white_9.json | 7 + .../blockstates/road_block_yellow_1.json | 7 + .../blockstates/road_block_yellow_10.json | 7 + .../blockstates/road_block_yellow_11.json | 7 + .../blockstates/road_block_yellow_12.json | 7 + .../blockstates/road_block_yellow_13.json | 7 + .../blockstates/road_block_yellow_14.json | 7 + .../blockstates/road_block_yellow_15.json | 7 + .../blockstates/road_block_yellow_16.json | 7 + .../blockstates/road_block_yellow_2.json | 7 + .../blockstates/road_block_yellow_3.json | 7 + .../blockstates/road_block_yellow_4.json | 7 + .../blockstates/road_block_yellow_5.json | 7 + .../blockstates/road_block_yellow_6.json | 7 + .../blockstates/road_block_yellow_7.json | 7 + .../blockstates/road_block_yellow_8.json | 7 + .../blockstates/road_block_yellow_9.json | 7 + .../blockstates/sand_road_1.json | 7 + .../blockstates/sand_road_10.json | 7 + .../blockstates/sand_road_11.json | 7 + .../blockstates/sand_road_12.json | 7 + .../blockstates/sand_road_13.json | 7 + .../blockstates/sand_road_14.json | 7 + .../blockstates/sand_road_15.json | 7 + .../blockstates/sand_road_16.json | 7 + .../blockstates/sand_road_2.json | 7 + .../blockstates/sand_road_3.json | 7 + .../blockstates/sand_road_4.json | 7 + .../blockstates/sand_road_5.json | 7 + .../blockstates/sand_road_6.json | 7 + .../blockstates/sand_road_7.json | 7 + .../blockstates/sand_road_8.json | 7 + .../blockstates/sand_road_9.json | 7 + .../blockstates/sidewalk_1.json | 7 + .../blockstates/sidewalk_10.json | 7 + .../blockstates/sidewalk_11.json | 7 + .../blockstates/sidewalk_12.json | 7 + .../blockstates/sidewalk_13.json | 7 + .../blockstates/sidewalk_14.json | 7 + .../blockstates/sidewalk_15.json | 7 + .../blockstates/sidewalk_16.json | 7 + .../blockstates/sidewalk_2.json | 7 + .../blockstates/sidewalk_3.json | 7 + .../blockstates/sidewalk_4.json | 7 + .../blockstates/sidewalk_5.json | 7 + .../blockstates/sidewalk_6.json | 7 + .../blockstates/sidewalk_7.json | 7 + .../blockstates/sidewalk_8.json | 7 + .../blockstates/sidewalk_9.json | 7 + .../blockstates/sidewalk_clean_1.json | 7 + .../blockstates/sidewalk_clean_10.json | 7 + .../blockstates/sidewalk_clean_11.json | 7 + .../blockstates/sidewalk_clean_12.json | 7 + .../blockstates/sidewalk_clean_13.json | 7 + .../blockstates/sidewalk_clean_14.json | 7 + .../blockstates/sidewalk_clean_15.json | 7 + .../blockstates/sidewalk_clean_16.json | 7 + .../blockstates/sidewalk_clean_2.json | 7 + .../blockstates/sidewalk_clean_3.json | 7 + .../blockstates/sidewalk_clean_4.json | 7 + .../blockstates/sidewalk_clean_5.json | 7 + .../blockstates/sidewalk_clean_6.json | 7 + .../blockstates/sidewalk_clean_7.json | 7 + .../blockstates/sidewalk_clean_8.json | 7 + .../blockstates/sidewalk_clean_9.json | 7 + .../blockstates/sidewalk_dark_1.json | 7 + .../blockstates/sidewalk_dark_10.json | 7 + .../blockstates/sidewalk_dark_11.json | 7 + .../blockstates/sidewalk_dark_12.json | 7 + .../blockstates/sidewalk_dark_13.json | 7 + .../blockstates/sidewalk_dark_14.json | 7 + .../blockstates/sidewalk_dark_15.json | 7 + .../blockstates/sidewalk_dark_16.json | 7 + .../blockstates/sidewalk_dark_2.json | 7 + .../blockstates/sidewalk_dark_3.json | 7 + .../blockstates/sidewalk_dark_4.json | 7 + .../blockstates/sidewalk_dark_5.json | 7 + .../blockstates/sidewalk_dark_6.json | 7 + .../blockstates/sidewalk_dark_7.json | 7 + .../blockstates/sidewalk_dark_8.json | 7 + .../blockstates/sidewalk_dark_9.json | 7 + .../blockstates/sidewalk_tan_1.json | 7 + .../blockstates/sidewalk_tan_10.json | 7 + .../blockstates/sidewalk_tan_11.json | 7 + .../blockstates/sidewalk_tan_12.json | 7 + .../blockstates/sidewalk_tan_13.json | 7 + .../blockstates/sidewalk_tan_14.json | 7 + .../blockstates/sidewalk_tan_15.json | 7 + .../blockstates/sidewalk_tan_16.json | 7 + .../blockstates/sidewalk_tan_2.json | 7 + .../blockstates/sidewalk_tan_3.json | 7 + .../blockstates/sidewalk_tan_4.json | 7 + .../blockstates/sidewalk_tan_5.json | 7 + .../blockstates/sidewalk_tan_6.json | 7 + .../blockstates/sidewalk_tan_7.json | 7 + .../blockstates/sidewalk_tan_8.json | 7 + .../blockstates/sidewalk_tan_9.json | 7 + .../blockstates/stone_road_1.json | 7 + .../blockstates/stone_road_10.json | 7 + .../blockstates/stone_road_11.json | 7 + .../blockstates/stone_road_12.json | 7 + .../blockstates/stone_road_13.json | 7 + .../blockstates/stone_road_14.json | 7 + .../blockstates/stone_road_15.json | 7 + .../blockstates/stone_road_16.json | 7 + .../blockstates/stone_road_2.json | 7 + .../blockstates/stone_road_3.json | 7 + .../blockstates/stone_road_4.json | 7 + .../blockstates/stone_road_5.json | 7 + .../blockstates/stone_road_6.json | 7 + .../blockstates/stone_road_7.json | 7 + .../blockstates/stone_road_8.json | 7 + .../blockstates/stone_road_9.json | 7 + .../furenikusroads/models/block/cement.json | 6 + .../furenikusroads/models/block/clinker.json | 6 + .../models/block/crushed_rock.json | 6 + .../models/block/dirt_road_1.json | 6 + .../models/block/dirt_road_10.json | 6 + .../models/block/dirt_road_11.json | 6 + .../models/block/dirt_road_12.json | 6 + .../models/block/dirt_road_13.json | 6 + .../models/block/dirt_road_14.json | 6 + .../models/block/dirt_road_15.json | 6 + .../models/block/dirt_road_16.json | 6 + .../models/block/dirt_road_2.json | 6 + .../models/block/dirt_road_3.json | 6 + .../models/block/dirt_road_4.json | 6 + .../models/block/dirt_road_5.json | 6 + .../models/block/dirt_road_6.json | 6 + .../models/block/dirt_road_7.json | 6 + .../models/block/dirt_road_8.json | 6 + .../models/block/dirt_road_9.json | 6 + .../models/block/grass_road_1.json | 6 + .../models/block/grass_road_10.json | 6 + .../models/block/grass_road_11.json | 6 + .../models/block/grass_road_12.json | 6 + .../models/block/grass_road_13.json | 6 + .../models/block/grass_road_14.json | 6 + .../models/block/grass_road_15.json | 6 + .../models/block/grass_road_16.json | 6 + .../models/block/grass_road_2.json | 6 + .../models/block/grass_road_3.json | 6 + .../models/block/grass_road_4.json | 6 + .../models/block/grass_road_5.json | 6 + .../models/block/grass_road_6.json | 6 + .../models/block/grass_road_7.json | 6 + .../models/block/grass_road_8.json | 6 + .../models/block/grass_road_9.json | 6 + .../models/block/gravel_road_1.json | 6 + .../models/block/gravel_road_10.json | 6 + .../models/block/gravel_road_11.json | 6 + .../models/block/gravel_road_12.json | 6 + .../models/block/gravel_road_13.json | 6 + .../models/block/gravel_road_14.json | 6 + .../models/block/gravel_road_15.json | 6 + .../models/block/gravel_road_16.json | 6 + .../models/block/gravel_road_2.json | 6 + .../models/block/gravel_road_3.json | 6 + .../models/block/gravel_road_4.json | 6 + .../models/block/gravel_road_5.json | 6 + .../models/block/gravel_road_6.json | 6 + .../models/block/gravel_road_7.json | 6 + .../models/block/gravel_road_8.json | 6 + .../models/block/gravel_road_9.json | 6 + .../models/block/limestone.json | 6 + .../models/block/road_block_blue_1.json | 6 + .../models/block/road_block_blue_10.json | 6 + .../models/block/road_block_blue_11.json | 6 + .../models/block/road_block_blue_12.json | 6 + .../models/block/road_block_blue_13.json | 6 + .../models/block/road_block_blue_14.json | 6 + .../models/block/road_block_blue_15.json | 6 + .../models/block/road_block_blue_16.json | 6 + .../models/block/road_block_blue_2.json | 6 + .../models/block/road_block_blue_3.json | 6 + .../models/block/road_block_blue_4.json | 6 + .../models/block/road_block_blue_5.json | 6 + .../models/block/road_block_blue_6.json | 6 + .../models/block/road_block_blue_7.json | 6 + .../models/block/road_block_blue_8.json | 6 + .../models/block/road_block_blue_9.json | 6 + .../models/block/road_block_concrete_1_1.json | 6 + .../block/road_block_concrete_1_10.json | 6 + .../block/road_block_concrete_1_11.json | 6 + .../block/road_block_concrete_1_12.json | 6 + .../block/road_block_concrete_1_13.json | 6 + .../block/road_block_concrete_1_14.json | 6 + .../block/road_block_concrete_1_15.json | 6 + .../block/road_block_concrete_1_16.json | 6 + .../models/block/road_block_concrete_1_2.json | 6 + .../models/block/road_block_concrete_1_3.json | 6 + .../models/block/road_block_concrete_1_4.json | 6 + .../models/block/road_block_concrete_1_5.json | 6 + .../models/block/road_block_concrete_1_6.json | 6 + .../models/block/road_block_concrete_1_7.json | 6 + .../models/block/road_block_concrete_1_8.json | 6 + .../models/block/road_block_concrete_1_9.json | 6 + .../models/block/road_block_concrete_2_1.json | 6 + .../block/road_block_concrete_2_10.json | 6 + .../block/road_block_concrete_2_11.json | 6 + .../block/road_block_concrete_2_12.json | 6 + .../block/road_block_concrete_2_13.json | 6 + .../block/road_block_concrete_2_14.json | 6 + .../block/road_block_concrete_2_15.json | 6 + .../block/road_block_concrete_2_16.json | 6 + .../models/block/road_block_concrete_2_2.json | 6 + .../models/block/road_block_concrete_2_3.json | 6 + .../models/block/road_block_concrete_2_4.json | 6 + .../models/block/road_block_concrete_2_5.json | 6 + .../models/block/road_block_concrete_2_6.json | 6 + .../models/block/road_block_concrete_2_7.json | 6 + .../models/block/road_block_concrete_2_8.json | 6 + .../models/block/road_block_concrete_2_9.json | 6 + .../models/block/road_block_dark_1.json | 6 + .../models/block/road_block_dark_10.json | 6 + .../models/block/road_block_dark_11.json | 6 + .../models/block/road_block_dark_12.json | 6 + .../models/block/road_block_dark_13.json | 6 + .../models/block/road_block_dark_14.json | 6 + .../models/block/road_block_dark_15.json | 6 + .../models/block/road_block_dark_16.json | 6 + .../models/block/road_block_dark_2.json | 6 + .../models/block/road_block_dark_3.json | 6 + .../models/block/road_block_dark_4.json | 6 + .../models/block/road_block_dark_5.json | 6 + .../models/block/road_block_dark_6.json | 6 + .../models/block/road_block_dark_7.json | 6 + .../models/block/road_block_dark_8.json | 6 + .../models/block/road_block_dark_9.json | 6 + .../models/block/road_block_fine_1.json | 6 + .../models/block/road_block_fine_10.json | 6 + .../models/block/road_block_fine_11.json | 6 + .../models/block/road_block_fine_12.json | 6 + .../models/block/road_block_fine_13.json | 6 + .../models/block/road_block_fine_14.json | 6 + .../models/block/road_block_fine_15.json | 6 + .../models/block/road_block_fine_16.json | 6 + .../models/block/road_block_fine_2.json | 6 + .../models/block/road_block_fine_3.json | 6 + .../models/block/road_block_fine_4.json | 6 + .../models/block/road_block_fine_5.json | 6 + .../models/block/road_block_fine_6.json | 6 + .../models/block/road_block_fine_7.json | 6 + .../models/block/road_block_fine_8.json | 6 + .../models/block/road_block_fine_9.json | 6 + .../models/block/road_block_green_1.json | 6 + .../models/block/road_block_green_10.json | 6 + .../models/block/road_block_green_11.json | 6 + .../models/block/road_block_green_12.json | 6 + .../models/block/road_block_green_13.json | 6 + .../models/block/road_block_green_14.json | 6 + .../models/block/road_block_green_15.json | 6 + .../models/block/road_block_green_16.json | 6 + .../models/block/road_block_green_2.json | 6 + .../models/block/road_block_green_3.json | 6 + .../models/block/road_block_green_4.json | 6 + .../models/block/road_block_green_5.json | 6 + .../models/block/road_block_green_6.json | 6 + .../models/block/road_block_green_7.json | 6 + .../models/block/road_block_green_8.json | 6 + .../models/block/road_block_green_9.json | 6 + .../models/block/road_block_light_1.json | 6 + .../models/block/road_block_light_10.json | 6 + .../models/block/road_block_light_11.json | 6 + .../models/block/road_block_light_12.json | 6 + .../models/block/road_block_light_13.json | 6 + .../models/block/road_block_light_14.json | 6 + .../models/block/road_block_light_15.json | 6 + .../models/block/road_block_light_16.json | 6 + .../models/block/road_block_light_2.json | 6 + .../models/block/road_block_light_3.json | 6 + .../models/block/road_block_light_4.json | 6 + .../models/block/road_block_light_5.json | 6 + .../models/block/road_block_light_6.json | 6 + .../models/block/road_block_light_7.json | 6 + .../models/block/road_block_light_8.json | 6 + .../models/block/road_block_light_9.json | 6 + .../models/block/road_block_muddy_1.json | 6 + .../models/block/road_block_muddy_10.json | 6 + .../models/block/road_block_muddy_11.json | 6 + .../models/block/road_block_muddy_12.json | 6 + .../models/block/road_block_muddy_13.json | 6 + .../models/block/road_block_muddy_14.json | 6 + .../models/block/road_block_muddy_15.json | 6 + .../models/block/road_block_muddy_16.json | 6 + .../models/block/road_block_muddy_2.json | 6 + .../models/block/road_block_muddy_3.json | 6 + .../models/block/road_block_muddy_4.json | 6 + .../models/block/road_block_muddy_5.json | 6 + .../models/block/road_block_muddy_6.json | 6 + .../models/block/road_block_muddy_7.json | 6 + .../models/block/road_block_muddy_8.json | 6 + .../models/block/road_block_muddy_9.json | 6 + .../block/road_block_muddy_dried_1.json | 6 + .../block/road_block_muddy_dried_10.json | 6 + .../block/road_block_muddy_dried_11.json | 6 + .../block/road_block_muddy_dried_12.json | 6 + .../block/road_block_muddy_dried_13.json | 6 + .../block/road_block_muddy_dried_14.json | 6 + .../block/road_block_muddy_dried_15.json | 6 + .../block/road_block_muddy_dried_16.json | 6 + .../block/road_block_muddy_dried_2.json | 6 + .../block/road_block_muddy_dried_3.json | 6 + .../block/road_block_muddy_dried_4.json | 6 + .../block/road_block_muddy_dried_5.json | 6 + .../block/road_block_muddy_dried_6.json | 6 + .../block/road_block_muddy_dried_7.json | 6 + .../block/road_block_muddy_dried_8.json | 6 + .../block/road_block_muddy_dried_9.json | 6 + .../models/block/road_block_pale_1.json | 6 + .../models/block/road_block_pale_10.json | 6 + .../models/block/road_block_pale_11.json | 6 + .../models/block/road_block_pale_12.json | 6 + .../models/block/road_block_pale_13.json | 6 + .../models/block/road_block_pale_14.json | 6 + .../models/block/road_block_pale_15.json | 6 + .../models/block/road_block_pale_16.json | 6 + .../models/block/road_block_pale_2.json | 6 + .../models/block/road_block_pale_3.json | 6 + .../models/block/road_block_pale_4.json | 6 + .../models/block/road_block_pale_5.json | 6 + .../models/block/road_block_pale_6.json | 6 + .../models/block/road_block_pale_7.json | 6 + .../models/block/road_block_pale_8.json | 6 + .../models/block/road_block_pale_9.json | 6 + .../models/block/road_block_red_1.json | 6 + .../models/block/road_block_red_10.json | 6 + .../models/block/road_block_red_11.json | 6 + .../models/block/road_block_red_12.json | 6 + .../models/block/road_block_red_13.json | 6 + .../models/block/road_block_red_14.json | 6 + .../models/block/road_block_red_15.json | 6 + .../models/block/road_block_red_16.json | 6 + .../models/block/road_block_red_2.json | 6 + .../models/block/road_block_red_3.json | 6 + .../models/block/road_block_red_4.json | 6 + .../models/block/road_block_red_5.json | 6 + .../models/block/road_block_red_6.json | 6 + .../models/block/road_block_red_7.json | 6 + .../models/block/road_block_red_8.json | 6 + .../models/block/road_block_red_9.json | 6 + .../models/block/road_block_standard_1.json | 6 + .../models/block/road_block_standard_10.json | 6 + .../models/block/road_block_standard_11.json | 6 + .../models/block/road_block_standard_12.json | 6 + .../models/block/road_block_standard_13.json | 6 + .../models/block/road_block_standard_14.json | 6 + .../models/block/road_block_standard_15.json | 6 + .../models/block/road_block_standard_16.json | 6 + .../models/block/road_block_standard_2.json | 6 + .../models/block/road_block_standard_3.json | 6 + .../models/block/road_block_standard_4.json | 6 + .../models/block/road_block_standard_5.json | 6 + .../models/block/road_block_standard_6.json | 6 + .../models/block/road_block_standard_7.json | 6 + .../models/block/road_block_standard_8.json | 6 + .../models/block/road_block_standard_9.json | 6 + .../models/block/road_block_white_1.json | 6 + .../models/block/road_block_white_10.json | 6 + .../models/block/road_block_white_11.json | 6 + .../models/block/road_block_white_12.json | 6 + .../models/block/road_block_white_13.json | 6 + .../models/block/road_block_white_14.json | 6 + .../models/block/road_block_white_15.json | 6 + .../models/block/road_block_white_16.json | 6 + .../models/block/road_block_white_2.json | 6 + .../models/block/road_block_white_3.json | 6 + .../models/block/road_block_white_4.json | 6 + .../models/block/road_block_white_5.json | 6 + .../models/block/road_block_white_6.json | 6 + .../models/block/road_block_white_7.json | 6 + .../models/block/road_block_white_8.json | 6 + .../models/block/road_block_white_9.json | 6 + .../models/block/road_block_yellow_1.json | 6 + .../models/block/road_block_yellow_10.json | 6 + .../models/block/road_block_yellow_11.json | 6 + .../models/block/road_block_yellow_12.json | 6 + .../models/block/road_block_yellow_13.json | 6 + .../models/block/road_block_yellow_14.json | 6 + .../models/block/road_block_yellow_15.json | 6 + .../models/block/road_block_yellow_16.json | 6 + .../models/block/road_block_yellow_2.json | 6 + .../models/block/road_block_yellow_3.json | 6 + .../models/block/road_block_yellow_4.json | 6 + .../models/block/road_block_yellow_5.json | 6 + .../models/block/road_block_yellow_6.json | 6 + .../models/block/road_block_yellow_7.json | 6 + .../models/block/road_block_yellow_8.json | 6 + .../models/block/road_block_yellow_9.json | 6 + .../models/block/sand_road_1.json | 6 + .../models/block/sand_road_10.json | 6 + .../models/block/sand_road_11.json | 6 + .../models/block/sand_road_12.json | 6 + .../models/block/sand_road_13.json | 6 + .../models/block/sand_road_14.json | 6 + .../models/block/sand_road_15.json | 6 + .../models/block/sand_road_16.json | 6 + .../models/block/sand_road_2.json | 6 + .../models/block/sand_road_3.json | 6 + .../models/block/sand_road_4.json | 6 + .../models/block/sand_road_5.json | 6 + .../models/block/sand_road_6.json | 6 + .../models/block/sand_road_7.json | 6 + .../models/block/sand_road_8.json | 6 + .../models/block/sand_road_9.json | 6 + .../models/block/sidewalk_1.json | 6 + .../models/block/sidewalk_10.json | 6 + .../models/block/sidewalk_11.json | 6 + .../models/block/sidewalk_12.json | 6 + .../models/block/sidewalk_13.json | 6 + .../models/block/sidewalk_14.json | 6 + .../models/block/sidewalk_15.json | 6 + .../models/block/sidewalk_16.json | 6 + .../models/block/sidewalk_2.json | 6 + .../models/block/sidewalk_3.json | 6 + .../models/block/sidewalk_4.json | 6 + .../models/block/sidewalk_5.json | 6 + .../models/block/sidewalk_6.json | 6 + .../models/block/sidewalk_7.json | 6 + .../models/block/sidewalk_8.json | 6 + .../models/block/sidewalk_9.json | 6 + .../models/block/sidewalk_clean_1.json | 6 + .../models/block/sidewalk_clean_10.json | 6 + .../models/block/sidewalk_clean_11.json | 6 + .../models/block/sidewalk_clean_12.json | 6 + .../models/block/sidewalk_clean_13.json | 6 + .../models/block/sidewalk_clean_14.json | 6 + .../models/block/sidewalk_clean_15.json | 6 + .../models/block/sidewalk_clean_16.json | 6 + .../models/block/sidewalk_clean_2.json | 6 + .../models/block/sidewalk_clean_3.json | 6 + .../models/block/sidewalk_clean_4.json | 6 + .../models/block/sidewalk_clean_5.json | 6 + .../models/block/sidewalk_clean_6.json | 6 + .../models/block/sidewalk_clean_7.json | 6 + .../models/block/sidewalk_clean_8.json | 6 + .../models/block/sidewalk_clean_9.json | 6 + .../models/block/sidewalk_dark_1.json | 6 + .../models/block/sidewalk_dark_10.json | 6 + .../models/block/sidewalk_dark_11.json | 6 + .../models/block/sidewalk_dark_12.json | 6 + .../models/block/sidewalk_dark_13.json | 6 + .../models/block/sidewalk_dark_14.json | 6 + .../models/block/sidewalk_dark_15.json | 6 + .../models/block/sidewalk_dark_16.json | 6 + .../models/block/sidewalk_dark_2.json | 6 + .../models/block/sidewalk_dark_3.json | 6 + .../models/block/sidewalk_dark_4.json | 6 + .../models/block/sidewalk_dark_5.json | 6 + .../models/block/sidewalk_dark_6.json | 6 + .../models/block/sidewalk_dark_7.json | 6 + .../models/block/sidewalk_dark_8.json | 6 + .../models/block/sidewalk_dark_9.json | 6 + .../models/block/sidewalk_tan_1.json | 6 + .../models/block/sidewalk_tan_10.json | 6 + .../models/block/sidewalk_tan_11.json | 6 + .../models/block/sidewalk_tan_12.json | 6 + .../models/block/sidewalk_tan_13.json | 6 + .../models/block/sidewalk_tan_14.json | 6 + .../models/block/sidewalk_tan_15.json | 6 + .../models/block/sidewalk_tan_16.json | 6 + .../models/block/sidewalk_tan_2.json | 6 + .../models/block/sidewalk_tan_3.json | 6 + .../models/block/sidewalk_tan_4.json | 6 + .../models/block/sidewalk_tan_5.json | 6 + .../models/block/sidewalk_tan_6.json | 6 + .../models/block/sidewalk_tan_7.json | 6 + .../models/block/sidewalk_tan_8.json | 6 + .../models/block/sidewalk_tan_9.json | 6 + .../models/block/stone_road_1.json | 6 + .../models/block/stone_road_10.json | 6 + .../models/block/stone_road_11.json | 6 + .../models/block/stone_road_12.json | 6 + .../models/block/stone_road_13.json | 6 + .../models/block/stone_road_14.json | 6 + .../models/block/stone_road_15.json | 6 + .../models/block/stone_road_16.json | 6 + .../models/block/stone_road_2.json | 6 + .../models/block/stone_road_3.json | 6 + .../models/block/stone_road_4.json | 6 + .../models/block/stone_road_5.json | 6 + .../models/block/stone_road_6.json | 6 + .../models/block/stone_road_7.json | 6 + .../models/block/stone_road_8.json | 6 + .../models/block/stone_road_9.json | 6 + .../furenikusroads/models/item/cement.json | 3 + .../furenikusroads/models/item/clinker.json | 3 + .../models/item/crushed_rock.json | 3 + .../models/item/dirt_road_1.json | 3 + .../models/item/dirt_road_10.json | 3 + .../models/item/dirt_road_11.json | 3 + .../models/item/dirt_road_12.json | 3 + .../models/item/dirt_road_13.json | 3 + .../models/item/dirt_road_14.json | 3 + .../models/item/dirt_road_15.json | 3 + .../models/item/dirt_road_16.json | 3 + .../models/item/dirt_road_2.json | 3 + .../models/item/dirt_road_3.json | 3 + .../models/item/dirt_road_4.json | 3 + .../models/item/dirt_road_5.json | 3 + .../models/item/dirt_road_6.json | 3 + .../models/item/dirt_road_7.json | 3 + .../models/item/dirt_road_8.json | 3 + .../models/item/dirt_road_9.json | 3 + .../models/item/grass_road_1.json | 3 + .../models/item/grass_road_10.json | 3 + .../models/item/grass_road_11.json | 3 + .../models/item/grass_road_12.json | 3 + .../models/item/grass_road_13.json | 3 + .../models/item/grass_road_14.json | 3 + .../models/item/grass_road_15.json | 3 + .../models/item/grass_road_16.json | 3 + .../models/item/grass_road_2.json | 3 + .../models/item/grass_road_3.json | 3 + .../models/item/grass_road_4.json | 3 + .../models/item/grass_road_5.json | 3 + .../models/item/grass_road_6.json | 3 + .../models/item/grass_road_7.json | 3 + .../models/item/grass_road_8.json | 3 + .../models/item/grass_road_9.json | 3 + .../models/item/gravel_road_1.json | 3 + .../models/item/gravel_road_10.json | 3 + .../models/item/gravel_road_11.json | 3 + .../models/item/gravel_road_12.json | 3 + .../models/item/gravel_road_13.json | 3 + .../models/item/gravel_road_14.json | 3 + .../models/item/gravel_road_15.json | 3 + .../models/item/gravel_road_16.json | 3 + .../models/item/gravel_road_2.json | 3 + .../models/item/gravel_road_3.json | 3 + .../models/item/gravel_road_4.json | 3 + .../models/item/gravel_road_5.json | 3 + .../models/item/gravel_road_6.json | 3 + .../models/item/gravel_road_7.json | 3 + .../models/item/gravel_road_8.json | 3 + .../models/item/gravel_road_9.json | 3 + .../furenikusroads/models/item/limestone.json | 3 + .../models/item/road_block_blue_1.json | 3 + .../models/item/road_block_blue_10.json | 3 + .../models/item/road_block_blue_11.json | 3 + .../models/item/road_block_blue_12.json | 3 + .../models/item/road_block_blue_13.json | 3 + .../models/item/road_block_blue_14.json | 3 + .../models/item/road_block_blue_15.json | 3 + .../models/item/road_block_blue_16.json | 3 + .../models/item/road_block_blue_2.json | 3 + .../models/item/road_block_blue_3.json | 3 + .../models/item/road_block_blue_4.json | 3 + .../models/item/road_block_blue_5.json | 3 + .../models/item/road_block_blue_6.json | 3 + .../models/item/road_block_blue_7.json | 3 + .../models/item/road_block_blue_8.json | 3 + .../models/item/road_block_blue_9.json | 3 + .../models/item/road_block_concrete_1_1.json | 3 + .../models/item/road_block_concrete_1_10.json | 3 + .../models/item/road_block_concrete_1_11.json | 3 + .../models/item/road_block_concrete_1_12.json | 3 + .../models/item/road_block_concrete_1_13.json | 3 + .../models/item/road_block_concrete_1_14.json | 3 + .../models/item/road_block_concrete_1_15.json | 3 + .../models/item/road_block_concrete_1_16.json | 3 + .../models/item/road_block_concrete_1_2.json | 3 + .../models/item/road_block_concrete_1_3.json | 3 + .../models/item/road_block_concrete_1_4.json | 3 + .../models/item/road_block_concrete_1_5.json | 3 + .../models/item/road_block_concrete_1_6.json | 3 + .../models/item/road_block_concrete_1_7.json | 3 + .../models/item/road_block_concrete_1_8.json | 3 + .../models/item/road_block_concrete_1_9.json | 3 + .../models/item/road_block_concrete_2_1.json | 3 + .../models/item/road_block_concrete_2_10.json | 3 + .../models/item/road_block_concrete_2_11.json | 3 + .../models/item/road_block_concrete_2_12.json | 3 + .../models/item/road_block_concrete_2_13.json | 3 + .../models/item/road_block_concrete_2_14.json | 3 + .../models/item/road_block_concrete_2_15.json | 3 + .../models/item/road_block_concrete_2_16.json | 3 + .../models/item/road_block_concrete_2_2.json | 3 + .../models/item/road_block_concrete_2_3.json | 3 + .../models/item/road_block_concrete_2_4.json | 3 + .../models/item/road_block_concrete_2_5.json | 3 + .../models/item/road_block_concrete_2_6.json | 3 + .../models/item/road_block_concrete_2_7.json | 3 + .../models/item/road_block_concrete_2_8.json | 3 + .../models/item/road_block_concrete_2_9.json | 3 + .../models/item/road_block_dark_1.json | 3 + .../models/item/road_block_dark_10.json | 3 + .../models/item/road_block_dark_11.json | 3 + .../models/item/road_block_dark_12.json | 3 + .../models/item/road_block_dark_13.json | 3 + .../models/item/road_block_dark_14.json | 3 + .../models/item/road_block_dark_15.json | 3 + .../models/item/road_block_dark_16.json | 3 + .../models/item/road_block_dark_2.json | 3 + .../models/item/road_block_dark_3.json | 3 + .../models/item/road_block_dark_4.json | 3 + .../models/item/road_block_dark_5.json | 3 + .../models/item/road_block_dark_6.json | 3 + .../models/item/road_block_dark_7.json | 3 + .../models/item/road_block_dark_8.json | 3 + .../models/item/road_block_dark_9.json | 3 + .../models/item/road_block_fine_1.json | 3 + .../models/item/road_block_fine_10.json | 3 + .../models/item/road_block_fine_11.json | 3 + .../models/item/road_block_fine_12.json | 3 + .../models/item/road_block_fine_13.json | 3 + .../models/item/road_block_fine_14.json | 3 + .../models/item/road_block_fine_15.json | 3 + .../models/item/road_block_fine_16.json | 3 + .../models/item/road_block_fine_2.json | 3 + .../models/item/road_block_fine_3.json | 3 + .../models/item/road_block_fine_4.json | 3 + .../models/item/road_block_fine_5.json | 3 + .../models/item/road_block_fine_6.json | 3 + .../models/item/road_block_fine_7.json | 3 + .../models/item/road_block_fine_8.json | 3 + .../models/item/road_block_fine_9.json | 3 + .../models/item/road_block_green_1.json | 3 + .../models/item/road_block_green_10.json | 3 + .../models/item/road_block_green_11.json | 3 + .../models/item/road_block_green_12.json | 3 + .../models/item/road_block_green_13.json | 3 + .../models/item/road_block_green_14.json | 3 + .../models/item/road_block_green_15.json | 3 + .../models/item/road_block_green_16.json | 3 + .../models/item/road_block_green_2.json | 3 + .../models/item/road_block_green_3.json | 3 + .../models/item/road_block_green_4.json | 3 + .../models/item/road_block_green_5.json | 3 + .../models/item/road_block_green_6.json | 3 + .../models/item/road_block_green_7.json | 3 + .../models/item/road_block_green_8.json | 3 + .../models/item/road_block_green_9.json | 3 + .../models/item/road_block_light_1.json | 3 + .../models/item/road_block_light_10.json | 3 + .../models/item/road_block_light_11.json | 3 + .../models/item/road_block_light_12.json | 3 + .../models/item/road_block_light_13.json | 3 + .../models/item/road_block_light_14.json | 3 + .../models/item/road_block_light_15.json | 3 + .../models/item/road_block_light_16.json | 3 + .../models/item/road_block_light_2.json | 3 + .../models/item/road_block_light_3.json | 3 + .../models/item/road_block_light_4.json | 3 + .../models/item/road_block_light_5.json | 3 + .../models/item/road_block_light_6.json | 3 + .../models/item/road_block_light_7.json | 3 + .../models/item/road_block_light_8.json | 3 + .../models/item/road_block_light_9.json | 3 + .../models/item/road_block_muddy_1.json | 3 + .../models/item/road_block_muddy_10.json | 3 + .../models/item/road_block_muddy_11.json | 3 + .../models/item/road_block_muddy_12.json | 3 + .../models/item/road_block_muddy_13.json | 3 + .../models/item/road_block_muddy_14.json | 3 + .../models/item/road_block_muddy_15.json | 3 + .../models/item/road_block_muddy_16.json | 3 + .../models/item/road_block_muddy_2.json | 3 + .../models/item/road_block_muddy_3.json | 3 + .../models/item/road_block_muddy_4.json | 3 + .../models/item/road_block_muddy_5.json | 3 + .../models/item/road_block_muddy_6.json | 3 + .../models/item/road_block_muddy_7.json | 3 + .../models/item/road_block_muddy_8.json | 3 + .../models/item/road_block_muddy_9.json | 3 + .../models/item/road_block_muddy_dried_1.json | 3 + .../item/road_block_muddy_dried_10.json | 3 + .../item/road_block_muddy_dried_11.json | 3 + .../item/road_block_muddy_dried_12.json | 3 + .../item/road_block_muddy_dried_13.json | 3 + .../item/road_block_muddy_dried_14.json | 3 + .../item/road_block_muddy_dried_15.json | 3 + .../item/road_block_muddy_dried_16.json | 3 + .../models/item/road_block_muddy_dried_2.json | 3 + .../models/item/road_block_muddy_dried_3.json | 3 + .../models/item/road_block_muddy_dried_4.json | 3 + .../models/item/road_block_muddy_dried_5.json | 3 + .../models/item/road_block_muddy_dried_6.json | 3 + .../models/item/road_block_muddy_dried_7.json | 3 + .../models/item/road_block_muddy_dried_8.json | 3 + .../models/item/road_block_muddy_dried_9.json | 3 + .../models/item/road_block_pale_1.json | 3 + .../models/item/road_block_pale_10.json | 3 + .../models/item/road_block_pale_11.json | 3 + .../models/item/road_block_pale_12.json | 3 + .../models/item/road_block_pale_13.json | 3 + .../models/item/road_block_pale_14.json | 3 + .../models/item/road_block_pale_15.json | 3 + .../models/item/road_block_pale_16.json | 3 + .../models/item/road_block_pale_2.json | 3 + .../models/item/road_block_pale_3.json | 3 + .../models/item/road_block_pale_4.json | 3 + .../models/item/road_block_pale_5.json | 3 + .../models/item/road_block_pale_6.json | 3 + .../models/item/road_block_pale_7.json | 3 + .../models/item/road_block_pale_8.json | 3 + .../models/item/road_block_pale_9.json | 3 + .../models/item/road_block_red_1.json | 3 + .../models/item/road_block_red_10.json | 3 + .../models/item/road_block_red_11.json | 3 + .../models/item/road_block_red_12.json | 3 + .../models/item/road_block_red_13.json | 3 + .../models/item/road_block_red_14.json | 3 + .../models/item/road_block_red_15.json | 3 + .../models/item/road_block_red_16.json | 3 + .../models/item/road_block_red_2.json | 3 + .../models/item/road_block_red_3.json | 3 + .../models/item/road_block_red_4.json | 3 + .../models/item/road_block_red_5.json | 3 + .../models/item/road_block_red_6.json | 3 + .../models/item/road_block_red_7.json | 3 + .../models/item/road_block_red_8.json | 3 + .../models/item/road_block_red_9.json | 3 + .../models/item/road_block_standard_1.json | 3 + .../models/item/road_block_standard_10.json | 3 + .../models/item/road_block_standard_11.json | 3 + .../models/item/road_block_standard_12.json | 3 + .../models/item/road_block_standard_13.json | 3 + .../models/item/road_block_standard_14.json | 3 + .../models/item/road_block_standard_15.json | 3 + .../models/item/road_block_standard_16.json | 3 + .../models/item/road_block_standard_2.json | 3 + .../models/item/road_block_standard_3.json | 3 + .../models/item/road_block_standard_4.json | 3 + .../models/item/road_block_standard_5.json | 3 + .../models/item/road_block_standard_6.json | 3 + .../models/item/road_block_standard_7.json | 3 + .../models/item/road_block_standard_8.json | 3 + .../models/item/road_block_standard_9.json | 3 + .../models/item/road_block_white_1.json | 3 + .../models/item/road_block_white_10.json | 3 + .../models/item/road_block_white_11.json | 3 + .../models/item/road_block_white_12.json | 3 + .../models/item/road_block_white_13.json | 3 + .../models/item/road_block_white_14.json | 3 + .../models/item/road_block_white_15.json | 3 + .../models/item/road_block_white_16.json | 3 + .../models/item/road_block_white_2.json | 3 + .../models/item/road_block_white_3.json | 3 + .../models/item/road_block_white_4.json | 3 + .../models/item/road_block_white_5.json | 3 + .../models/item/road_block_white_6.json | 3 + .../models/item/road_block_white_7.json | 3 + .../models/item/road_block_white_8.json | 3 + .../models/item/road_block_white_9.json | 3 + .../models/item/road_block_yellow_1.json | 3 + .../models/item/road_block_yellow_10.json | 3 + .../models/item/road_block_yellow_11.json | 3 + .../models/item/road_block_yellow_12.json | 3 + .../models/item/road_block_yellow_13.json | 3 + .../models/item/road_block_yellow_14.json | 3 + .../models/item/road_block_yellow_15.json | 3 + .../models/item/road_block_yellow_16.json | 3 + .../models/item/road_block_yellow_2.json | 3 + .../models/item/road_block_yellow_3.json | 3 + .../models/item/road_block_yellow_4.json | 3 + .../models/item/road_block_yellow_5.json | 3 + .../models/item/road_block_yellow_6.json | 3 + .../models/item/road_block_yellow_7.json | 3 + .../models/item/road_block_yellow_8.json | 3 + .../models/item/road_block_yellow_9.json | 3 + .../models/item/sand_road_1.json | 3 + .../models/item/sand_road_10.json | 3 + .../models/item/sand_road_11.json | 3 + .../models/item/sand_road_12.json | 3 + .../models/item/sand_road_13.json | 3 + .../models/item/sand_road_14.json | 3 + .../models/item/sand_road_15.json | 3 + .../models/item/sand_road_16.json | 3 + .../models/item/sand_road_2.json | 3 + .../models/item/sand_road_3.json | 3 + .../models/item/sand_road_4.json | 3 + .../models/item/sand_road_5.json | 3 + .../models/item/sand_road_6.json | 3 + .../models/item/sand_road_7.json | 3 + .../models/item/sand_road_8.json | 3 + .../models/item/sand_road_9.json | 3 + .../models/item/sidewalk_1.json | 3 + .../models/item/sidewalk_10.json | 3 + .../models/item/sidewalk_11.json | 3 + .../models/item/sidewalk_12.json | 3 + .../models/item/sidewalk_13.json | 3 + .../models/item/sidewalk_14.json | 3 + .../models/item/sidewalk_15.json | 3 + .../models/item/sidewalk_16.json | 3 + .../models/item/sidewalk_2.json | 3 + .../models/item/sidewalk_3.json | 3 + .../models/item/sidewalk_4.json | 3 + .../models/item/sidewalk_5.json | 3 + .../models/item/sidewalk_6.json | 3 + .../models/item/sidewalk_7.json | 3 + .../models/item/sidewalk_8.json | 3 + .../models/item/sidewalk_9.json | 3 + .../models/item/sidewalk_clean_1.json | 3 + .../models/item/sidewalk_clean_10.json | 3 + .../models/item/sidewalk_clean_11.json | 3 + .../models/item/sidewalk_clean_12.json | 3 + .../models/item/sidewalk_clean_13.json | 3 + .../models/item/sidewalk_clean_14.json | 3 + .../models/item/sidewalk_clean_15.json | 3 + .../models/item/sidewalk_clean_16.json | 3 + .../models/item/sidewalk_clean_2.json | 3 + .../models/item/sidewalk_clean_3.json | 3 + .../models/item/sidewalk_clean_4.json | 3 + .../models/item/sidewalk_clean_5.json | 3 + .../models/item/sidewalk_clean_6.json | 3 + .../models/item/sidewalk_clean_7.json | 3 + .../models/item/sidewalk_clean_8.json | 3 + .../models/item/sidewalk_clean_9.json | 3 + .../models/item/sidewalk_dark_1.json | 3 + .../models/item/sidewalk_dark_10.json | 3 + .../models/item/sidewalk_dark_11.json | 3 + .../models/item/sidewalk_dark_12.json | 3 + .../models/item/sidewalk_dark_13.json | 3 + .../models/item/sidewalk_dark_14.json | 3 + .../models/item/sidewalk_dark_15.json | 3 + .../models/item/sidewalk_dark_16.json | 3 + .../models/item/sidewalk_dark_2.json | 3 + .../models/item/sidewalk_dark_3.json | 3 + .../models/item/sidewalk_dark_4.json | 3 + .../models/item/sidewalk_dark_5.json | 3 + .../models/item/sidewalk_dark_6.json | 3 + .../models/item/sidewalk_dark_7.json | 3 + .../models/item/sidewalk_dark_8.json | 3 + .../models/item/sidewalk_dark_9.json | 3 + .../models/item/sidewalk_tan_1.json | 3 + .../models/item/sidewalk_tan_10.json | 3 + .../models/item/sidewalk_tan_11.json | 3 + .../models/item/sidewalk_tan_12.json | 3 + .../models/item/sidewalk_tan_13.json | 3 + .../models/item/sidewalk_tan_14.json | 3 + .../models/item/sidewalk_tan_15.json | 3 + .../models/item/sidewalk_tan_16.json | 3 + .../models/item/sidewalk_tan_2.json | 3 + .../models/item/sidewalk_tan_3.json | 3 + .../models/item/sidewalk_tan_4.json | 3 + .../models/item/sidewalk_tan_5.json | 3 + .../models/item/sidewalk_tan_6.json | 3 + .../models/item/sidewalk_tan_7.json | 3 + .../models/item/sidewalk_tan_8.json | 3 + .../models/item/sidewalk_tan_9.json | 3 + .../models/item/stone_road_1.json | 3 + .../models/item/stone_road_10.json | 3 + .../models/item/stone_road_11.json | 3 + .../models/item/stone_road_12.json | 3 + .../models/item/stone_road_13.json | 3 + .../models/item/stone_road_14.json | 3 + .../models/item/stone_road_15.json | 3 + .../models/item/stone_road_16.json | 3 + .../models/item/stone_road_2.json | 3 + .../models/item/stone_road_3.json | 3 + .../models/item/stone_road_4.json | 3 + .../models/item/stone_road_5.json | 3 + .../models/item/stone_road_6.json | 3 + .../models/item/stone_road_7.json | 3 + .../models/item/stone_road_8.json | 3 + .../models/item/stone_road_9.json | 3 + .../com/fureniku/roads/FurenikusRoads.java | 38 + .../com/fureniku/roads/RegistrationRoads.java | 120 ++ .../roads/blocks/DecorativeBlock.java | 13 + .../com/fureniku/roads/blocks/RoadBlock.java | 63 + .../fureniku/roads/blocks/RoadBlockSet.java | 36 + .../roads/datagen/DataGeneration.java | 18 + .../roads/datagen/RoadsBlockStates.java | 22 + .../roads/datagen/RoadsItemModelProvider.java | 18 + .../fureniku/roads/enums/EnumRoadSize.java | 51 + .../silvaniastudios/roads/CommonProxy.java | 51 - .../com/silvaniastudios/roads/FRSounds.java | 15 - .../silvaniastudios/roads/FurenikusRoads.java | 242 ---- .../com/silvaniastudios/roads/GuiHandler.java | 185 --- .../com/silvaniastudios/roads/IColour.java | 11 - .../silvaniastudios/roads/RoadsConfig.java | 149 --- .../com/silvaniastudios/roads/WorldGen.java | 37 - .../roads/blocks/BlockBase.java | 50 - .../roads/blocks/BlockFakeLight.java | 85 -- .../roads/blocks/BlockRoadSnow.java | 96 -- .../roads/blocks/FRBlocks.java | 771 ----------- .../roads/blocks/NonPaintRoadTopBlock.java | 99 -- .../roads/blocks/PaintColour.java | 50 - .../roads/blocks/RoadBlock.java | 211 --- .../roads/blocks/StreetBlock.java | 76 -- .../roads/blocks/StreetRoadBlock.java | 14 - .../roads/blocks/decorative/BarrierBlock.java | 220 ---- .../decorative/BarrierConcreteEdgeBlock.java | 21 - .../blocks/decorative/BarrierEdgeBlock.java | 499 ------- .../blocks/decorative/BarrierEndBlock.java | 169 --- .../decorative/BarrierLowEdgeBlock.java | 21 - .../blocks/decorative/BarsBarrierBlock.java | 180 --- .../roads/blocks/decorative/BollardBlock.java | 162 --- .../roads/blocks/decorative/CatsEyeBlock.java | 166 --- .../decorative/CatsEyeBlockFourWay.java | 189 --- .../decorative/ConcreteBarrierBlock.java | 147 --- .../roads/blocks/decorative/CurbBlock.java | 561 -------- .../decorative/FoldingBollardBlock.java | 88 -- .../decorative/FourWayRotDecorativeBlock.java | 39 - .../decorative/GenericDecorativeBlock.java | 61 - .../roads/blocks/decorative/MetalPost.java | 170 --- .../decorative/RetractableBollardBlock.java | 93 -- .../blocks/decorative/SpeedBumpBlock.java | 86 -- .../decorative/StandardBollardBlock.java | 69 - .../roads/blocks/decorative/StreetLight.java | 153 --- .../decorative/TwoWayRotDecorativeBlock.java | 41 - .../blocks/decorative/WheelStopBlock.java | 43 - .../roads/blocks/diagonal/HalfBlock.java | 344 ----- .../blocks/diagonal/RoadBlockDiagonal.java | 669 ---------- .../roads/blocks/diagonal/ShapeLibrary.java | 460 ------- .../diagonal/UnlistedPropertyBlockPos.java | 33 - .../diagonal/UnlistedPropertySideBlock.java | 34 - .../roads/blocks/enums/EnumConnectArrows.java | 54 - .../blocks/enums/EnumConnectDiagonal.java | 48 - .../blocks/enums/EnumConnectDirectional.java | 63 - .../enums/EnumConnectDirectional_FarSide.java | 55 - .../enums/EnumConnectJunctionChevron.java | 52 - .../enums/EnumFourLengthConnectable.java | 62 - .../roads/blocks/enums/EnumMeta.java | 85 -- .../roads/blocks/enums/EnumRotatable.java | 59 - .../blocks/enums/EnumSimpleRotation.java | 42 - .../enums/EnumThreeLengthConnectable.java | 57 - .../enums/EnumTwoLengthConnectable.java | 46 - .../roads/blocks/enums/IConnectable.java | 5 - .../roads/blocks/enums/IMetaBlockName.java | 9 - .../roads/blocks/enums/IPostConnectable.java | 5 - .../blocks/paint/ArrowDiagonalPaintBlock.java | 122 -- .../blocks/paint/ArrowLinePaintBlock.java | 155 --- .../roads/blocks/paint/ArrowPaintBlock.java | 131 -- .../blocks/paint/ChevronMidPaintBlock.java | 159 --- .../roads/blocks/paint/ChevronPaintBlock.java | 334 ----- .../paint/ChevronSideLinePaintBlock.java | 281 ---- .../blocks/paint/ChevronSidePaintBlock.java | 96 -- .../blocks/paint/CrossingPaintBlock.java | 84 -- .../paint/JunctionFilterLinePaintBlock.java | 393 ------ .../blocks/paint/JunctionPaintBlock.java | 82 -- .../blocks/paint/LargeTextPaintBlock.java | 94 -- .../roads/blocks/paint/LinePaintBlock.java | 126 -- .../roads/blocks/paint/PaintBlockBase.java | 271 ---- .../paint/PaintBlockCustomRenderBase.java | 65 - .../blocks/paint/SideLinePaintBlock.java | 143 -- .../blocks/paint/SimpleLinePaintBlock.java | 63 - .../roads/blocks/paint/WallPaintBlock.java | 132 -- .../paint/customs/Custom1x2PaintBlock.java | 110 -- .../paint/customs/Custom1x3PaintBlock.java | 117 -- .../paint/customs/Custom1x4PaintBlock.java | 109 -- .../paint/customs/CustomMetaPaintBlock.java | 55 - .../paint/customs/CustomPaintBlock.java | 115 -- .../paint/customs/CustomPaintWallBlock.java | 100 -- .../blocks/paint/customs/ICustomBlock.java | 11 - .../blocks/paint/properties/PaintGrid.java | 42 - .../UnlistedPropertyConnection.java | 33 - .../paint/uniques/ChevronIconPaintBlock.java | 86 -- .../paint/uniques/HatchBoxPaintBlock.java | 83 -- .../blocks/tileentities/FREnergyStorage.java | 31 - .../tileentities/InputStackHandler.java | 44 - .../InteractableStackHandler.java | 66 - .../tileentities/OutputStackHandler.java | 44 - .../blocks/tileentities/RoadTEBlock.java | 243 ---- .../blocks/tileentities/RoadTileEntity.java | 106 -- .../roads/blocks/tileentities/SlotBucket.java | 20 - .../roads/blocks/tileentities/SlotFluid.java | 24 - .../roads/blocks/tileentities/SlotFuel.java | 22 - .../roads/blocks/tileentities/SlotOutput.java | 19 - .../compactor/CompactorBlock.java | 76 -- .../compactor/CompactorContainer.java | 148 --- .../compactor/CompactorElectricEntity.java | 88 -- .../compactor/CompactorEntity.java | 164 --- .../compactor/CompactorStackHandler.java | 63 - .../tileentities/compactor/SlotFragment.java | 21 - .../tileentities/crusher/CrusherBlock.java | 76 -- .../crusher/CrusherContainer.java | 139 -- .../crusher/CrusherElectricEntity.java | 93 -- .../tileentities/crusher/CrusherEntity.java | 182 --- .../crusher/CrusherStackHandler.java | 94 -- .../distiller/SlotDistillerFuel.java | 20 - .../distiller/SlotDistillerInput.java | 32 - .../distiller/TarDistillerBlock.java | 282 ---- .../distiller/TarDistillerContainer.java | 157 --- .../distiller/TarDistillerElectricEntity.java | 101 -- .../distiller/TarDistillerEntity.java | 340 ----- .../distiller/TarDistillerStackHandler.java | 78 -- .../fabricator/FabricatorBlock.java | 76 -- .../fabricator/FabricatorContainer.java | 158 --- .../fabricator/FabricatorElectricEntity.java | 88 -- .../fabricator/FabricatorEntity.java | 143 -- .../fabricator/FabricatorStackHandler.java | 59 - .../paintfiller/PaintFillerBlock.java | 91 -- .../paintfiller/PaintFillerContainer.java | 161 --- .../PaintFillerElectricEntity.java | 94 -- .../paintfiller/PaintFillerEntity.java | 372 ------ .../paintfiller/PaintFillerStackHandler.java | 81 -- .../tileentities/paintfiller/SlotDye.java | 34 - .../paintfiller/SlotPaintGun.java | 21 - .../hopper/PaintFillerHopperBlock.java | 248 ---- .../hopper/PaintFillerHopperEntity.java | 320 ----- .../hopper/PaintFillerHopperStackHandler.java | 80 -- .../paintoven/PaintOvenBlock.java | 141 -- .../paintoven/PaintOvenContainer.java | 154 --- .../paintoven/PaintOvenElectricEntity.java | 87 -- .../paintoven/PaintOvenEntity.java | 210 --- .../paintoven/PaintOvenStackHandler.java | 67 - .../recipes/CompactorRecipes.java | 48 - .../tileentities/recipes/CrusherRecipes.java | 35 - .../recipes/FabricatorRecipes.java | 87 -- .../tileentities/recipes/RecipeRegistry.java | 363 ------ .../recipes/RoadFactoryRecipes.java | 82 -- .../recipes/TarDistillerRecipes.java | 130 -- .../recipes/ThermalExpansionRecipes.java | 30 - .../recipes/ThermalFoundationRecipes.java | 21 - .../roadfactory/RoadFactoryBlock.java | 203 --- .../roadfactory/RoadFactoryContainer.java | 164 --- .../RoadFactoryElectricEntity.java | 100 -- .../roadfactory/RoadFactoryEntity.java | 324 ----- .../roadfactory/RoadFactoryStackHandler.java | 86 -- .../tileentities/roadfactory/SlotRoadIn.java | 42 - .../tileentities/tarmaccutter/SlotBlade.java | 21 - .../tarmaccutter/SlotTarmacCutter.java | 28 - .../tarmaccutter/TarmacCutterBlock.java | 137 -- .../tarmaccutter/TarmacCutterContainer.java | 151 --- .../TarmacCutterElectricEntity.java | 92 -- .../tarmaccutter/TarmacCutterEntity.java | 221 ---- .../TarmacCutterStackHandler.java | 72 - .../roads/client/BoundingBoxDraw.java | 113 -- .../roads/client/ClientProxy.java | 229 ---- .../roads/client/ModBlockColours.java | 14 - .../roads/client/ModItemColours.java | 14 - .../roads/client/TextureRegistryHandler.java | 301 ----- .../client/gui/FabricatorRecipeList.java | 108 -- .../roads/client/gui/GuiCompactor.java | 137 -- .../roads/client/gui/GuiCrusher.java | 127 -- .../roads/client/gui/GuiFabricator.java | 216 --- .../client/gui/GuiFabricatorSelector.java | 60 - .../roads/client/gui/GuiHiddenButton.java | 16 - .../roads/client/gui/GuiIconButton.java | 72 - .../roads/client/gui/GuiPaintFiller.java | 199 --- .../roads/client/gui/GuiPaintOven.java | 153 --- .../roads/client/gui/GuiRoadFactory.java | 267 ---- .../client/gui/GuiScrollingList_Mod.java | 387 ------ .../roads/client/gui/GuiTarDistiller.java | 185 --- .../roads/client/gui/GuiTarmacCutter.java | 118 -- .../client/gui/paintgun/GuiPaintGun.java | 236 ---- .../gui/paintgun/PaintGunCategoryList.java | 66 - .../gui/paintgun/PaintGunPaintList.java | 122 -- .../client/model/CatsEyeDoubleModel.java | 338 ----- .../roads/client/model/CatsEyeModel.java | 242 ---- .../model/CatsEyeTwoSidedDoubleModel.java | 554 -------- .../client/model/CatsEyeTwoSidedModel.java | 363 ------ .../roads/client/model/CrusherBakedModel.java | 179 --- .../roads/client/model/CrusherRenderer.java | 39 - .../roads/client/model/DiagonalRoadModel.java | 182 --- .../roads/client/model/ModelBakeHandler.java | 218 ---- .../client/model/PaintFillerBakedModel.java | 290 ----- .../model/PaintFillerHopperRenderer.java | 364 ------ .../client/model/PaintFillerRenderer.java | 117 -- .../roads/client/model/PaintGunModel.java | 366 ------ .../roads/client/model/PaintOvenRenderer.java | 47 - .../roads/client/model/RenderHelper.java | 256 ---- .../client/model/RoadFactoryBakedModel.java | 157 --- .../client/model/RoadFactoryRenderer.java | 76 -- .../client/model/TarDistillerBakedModel.java | 181 --- .../client/model/TarDistillerRenderer.java | 168 --- .../client/model/TarmacCutterBakedModel.java | 179 --- .../client/model/TarmacCutterRenderer.java | 14 - .../diagonal/DiagonalBakedModelBase.java | 147 --- .../model/diagonal/DiagonalModelBase.java | 39 - .../diagonal/DiagonalQuadQuadBakedModel.java | 49 - .../model/diagonal/DiagonalQuadQuadModel.java | 28 - .../model/diagonal/DiagonalTriangleModel.java | 23 - .../DiagonalTriangleQuadBakedModel.java | 49 - .../diagonal/DiagonalTriangleQuadModel.java | 28 - .../DiagonalTriangleTriangleBakedModel.java | 49 - .../loaders/Diagonal11MirrorModelLoader.java | 28 - .../loaders/Diagonal11ModelLoader.java | 28 - .../loaders/Diagonal12MirrorModelLoader.java | 28 - .../loaders/Diagonal12ModelLoader.java | 28 - .../loaders/Diagonal14MirrorModelLoader.java | 28 - .../loaders/Diagonal14ModelLoader.java | 28 - .../loaders/Diagonal18MirrorModelLoader.java | 28 - .../loaders/Diagonal18ModelLoader.java | 28 - .../loaders/Diagonal24MirrorModelLoader.java | 28 - .../loaders/Diagonal24ModelLoader.java | 28 - .../loaders/Diagonal28MirrorModelLoader.java | 28 - .../loaders/Diagonal28ModelLoader.java | 28 - .../loaders/Diagonal38MirrorModelLoader.java | 28 - .../loaders/Diagonal38ModelLoader.java | 28 - .../loaders/Diagonal48MirrorModelLoader.java | 28 - .../loaders/Diagonal48ModelLoader.java | 28 - .../model/paint/PaintBakedModelBase.java | 206 --- .../model/paint/PaintLineBakedModelBase.java | 130 -- .../client/model/paint/PaintModelBase.java | 44 - .../paint/loaders/CustomPaintModelLoader.java | 37 - .../model/paint/loaders/PaintLoaderBase.java | 41 - .../loaders/customs/CustomMetaPaintModel.java | 98 -- .../loaders/customs/CustomPaint2x1Model.java | 97 -- .../loaders/customs/CustomPaint3x1Model.java | 121 -- .../loaders/customs/CustomPaint4x1Model.java | 137 -- .../loaders/customs/CustomPaintModel.java | 81 -- .../loaders/customs/CustomWallPaintModel.java | 136 -- .../loaders/lines/PaintLineDoubleModel.java | 130 -- .../lines/PaintLineDoubleThickModel.java | 130 -- .../loaders/lines/PaintLineFarSideModel.java | 108 -- .../lines/PaintLineFarSideThickModel.java | 108 -- .../lines/PaintLineFilterLaneModel.java | 80 -- .../lines/PaintLineMiddleDashDoubleModel.java | 91 -- .../lines/PaintLineMiddleHalfDoubleModel.java | 84 -- .../lines/PaintLineMiddleShortModel.java | 81 -- .../paint/loaders/lines/PaintLineModel.java | 90 -- .../lines/PaintLineSideDoubleModel.java | 204 --- .../lines/PaintLineSideDoubleThickModel.java | 205 --- .../lines/PaintLineSideShortModel.java | 85 -- .../lines/PaintLineSideSingleModel.java | 147 --- .../lines/PaintLineSideSingleThickModel.java | 148 --- .../loaders/lines/PaintLineThickModel.java | 88 -- .../lines/PaintLineThinCrossingModel.java | 81 -- .../client/render/DynamicTextureProvider.java | 41 - .../roads/client/render/Quad.java | 239 ---- .../roads/fluids/FRFluids.java | 20 - .../roads/fluids/ModFluid.java | 15 - .../silvaniastudios/roads/items/FRItems.java | 188 --- .../roads/items/ItemFragment.java | 9 - .../roads/items/ItemWrench.java | 78 -- .../silvaniastudios/roads/items/PaintGun.java | 238 ---- .../roads/items/PneumaticDrill.java | 124 -- .../roads/items/RoadItemBase.java | 22 - .../roads/items/RoadItemBlock.java | 96 -- .../roads/items/RoadsFuelHandler.java | 17 - .../roads/items/TarmacCutterBlade.java | 42 - .../roads/items/TarmacRammer.java | 111 -- .../roads/jei/CompactorCategory.java | 93 -- .../roads/jei/CompactorWrapper.java | 24 - .../roads/jei/CrusherCategory.java | 93 -- .../roads/jei/CrusherWrapper.java | 25 - .../roads/jei/FRJEIPlugin.java | 190 --- .../roads/jei/FabricatorCategory.java | 103 -- .../roads/jei/FabricatorWrapper.java | 54 - .../roads/jei/PaintOvenCategory.java | 102 -- .../roads/jei/PaintOvenWrapper.java | 27 - .../roads/jei/RoadFactoryCategory.java | 104 -- .../roads/jei/RoadFactoryWrapper.java | 34 - .../roads/jei/TarDistillerCategory.java | 116 -- .../roads/jei/TarDistillerWrapper.java | 46 - .../roads/jei/TarmacCutterCategory.java | 132 -- .../roads/jei/TarmacCutterWrapper.java | 35 - .../roads/network/ClientGuiUpdatePacket.java | 180 --- .../roads/network/CompactorUpdatePacket.java | 48 - .../roads/network/FabricatorUpdatePacket.java | 72 - .../roads/network/PaintGunUpdatePacket.java | 80 -- .../registries/CustomPaintModelRegistry.java | 358 ----- .../registries/DynamicBlockRegistry.java | 174 --- .../roads/registries/PaintCategoryList.java | 60 - .../registries/PaintGunItemRegistry.java | 88 -- .../roads/registries/PaintIconObject.java | 33 - src/main/resources/META-INF/mods.toml | 70 + .../blockstates/barrier_bars_edge.json | 115 -- .../blockstates/barrier_bars_edge_2.json | 115 -- .../blockstates/barrier_bars_edge_3.json | 115 -- .../barrier_bars_edge_concrete_1.json | 130 -- .../barrier_bars_edge_concrete_1_double.json | 161 --- .../barrier_bars_edge_concrete_2.json | 130 -- .../barrier_bars_edge_concrete_2_double.json | 161 --- .../blockstates/barrier_bars_edge_double.json | 141 -- .../barrier_bars_edge_double_2.json | 141 -- .../barrier_bars_edge_double_3.json | 141 -- .../blockstates/barrier_bars_mid.json | 64 - .../blockstates/barrier_bars_mid_2.json | 64 - .../blockstates/barrier_bars_mid_3.json | 64 - .../barrier_bars_mid_concrete_1.json | 69 - .../barrier_bars_mid_concrete_2.json | 69 - .../blockstates/barrier_concrete_1_mid.json | 52 - .../blockstates/barrier_concrete_2_mid.json | 52 - .../blockstates/barrier_concrete_edge_1.json | 86 -- .../blockstates/barrier_concrete_edge_2.json | 86 -- .../blockstates/barrier_end.json | 35 - .../blockstates/barrier_low_edge.json | 111 -- .../blockstates/barrier_low_mid.json | 63 - .../blockstates/barrier_standard_edge.json | 111 -- .../barrier_standard_edge_double.json | 143 -- .../blockstates/barrier_standard_mid.json | 82 -- .../blockstates/barrier_tall_edge.json | 111 -- .../blockstates/barrier_tall_edge_double.json | 143 -- .../blockstates/barrier_tall_mid.json | 82 -- .../barrier_wall_edge_concrete_1.json | 120 -- .../barrier_wall_edge_concrete_1_double.json | 145 --- .../barrier_wall_edge_concrete_2.json | 120 -- .../barrier_wall_edge_concrete_2_double.json | 145 --- .../barrier_wall_mid_concrete_1.json | 64 - .../barrier_wall_mid_concrete_2.json | 64 - .../barrier_wall_pole_edge_concrete_1.json | 119 -- ...rier_wall_pole_edge_concrete_1_double.json | 155 --- .../barrier_wall_pole_edge_concrete_2.json | 119 -- ...rier_wall_pole_edge_concrete_2_double.json | 155 --- .../barrier_wall_pole_mid_concrete_1.json | 64 - .../barrier_wall_pole_mid_concrete_2.json | 64 - .../furenikusroads/blockstates/bollard_1.json | 83 -- .../furenikusroads/blockstates/bollard_2.json | 110 -- .../furenikusroads/blockstates/bollard_3.json | 107 -- .../blockstates/bollard_folding_black.json | 62 - .../bollard_folding_smooth_metal.json | 62 - .../blockstates/bollard_folding_yellow.json | 62 - .../blockstates/cats_eye_blue.json | 73 -- .../blockstates/cats_eye_blue_double.json | 43 - .../blockstates/cats_eye_green.json | 73 -- .../blockstates/cats_eye_green_double.json | 43 - .../blockstates/cats_eye_red.json | 73 -- .../blockstates/cats_eye_red_double.json | 43 - .../blockstates/cats_eye_red_green.json | 113 -- .../cats_eye_red_green_double.json | 83 -- .../blockstates/cats_eye_white.json | 76 -- .../blockstates/cats_eye_white_double.json | 43 - .../blockstates/cats_eye_white_green.json | 113 -- .../cats_eye_white_green_double.json | 83 -- .../blockstates/cats_eye_white_red.json | 113 -- .../cats_eye_white_red_double.json | 83 -- .../blockstates/cats_eye_white_yellow.json | 113 -- .../cats_eye_white_yellow_double.json | 83 -- .../blockstates/cats_eye_yellow.json | 73 -- .../blockstates/cats_eye_yellow_double.json | 43 - .../blockstates/cats_eye_yellow_red.json | 113 -- .../cats_eye_yellow_red_double.json | 83 -- .../furenikusroads/blockstates/compactor.json | 72 - .../blockstates/compactor_electric.json | 72 - .../furenikusroads/blockstates/crusher.json | 72 - .../blockstates/crusher_electric.json | 72 - .../blockstates/drain_cover_1.json | 17 - .../blockstates/drain_cover_2.json | 18 - .../blockstates/fabricator.json | 72 - .../blockstates/fabricator_electric.json | 72 - .../blockstates/fake_light_source.json | 5 - .../blockstates/generic_blocks.json | 31 - .../blockstates/hatch_box_red.json | 72 - .../blockstates/hatch_box_white.json | 72 - .../blockstates/hatch_box_yellow.json | 72 - .../blockstates/kerb_standard.json | 195 --- .../line_red_crossing_diagonal.json | 53 - .../line_white_crossing_diagonal.json | 53 - .../line_yellow_crossing_diagonal.json | 53 - .../blockstates/manhole_cover_round.json | 15 - .../blockstates/manhole_cover_square.json | 15 - .../blockstates/paint_filler.json | 86 -- .../blockstates/paint_filler_electric.json | 86 -- .../blockstates/paint_filler_hopper.json | 165 --- .../blockstates/paint_oven.json | 64 - .../blockstates/paint_oven_electric.json | 66 - .../blockstates/paint_red_fluid.json | 38 - .../blockstates/paint_white_fluid.json | 38 - .../blockstates/paint_yellow_fluid.json | 38 - .../blockstates/post_large_horizontal.json | 75 -- .../blockstates/post_large_horizontal_2.json | 75 -- .../blockstates/post_large_vertical.json | 89 -- .../blockstates/post_large_vertical_2.json | 89 -- .../blockstates/post_medium_horizontal.json | 75 -- .../blockstates/post_medium_horizontal_2.json | 75 -- .../blockstates/post_medium_vertical.json | 89 -- .../blockstates/post_medium_vertical_2.json | 89 -- .../blockstates/post_small_horizontal.json | 75 -- .../blockstates/post_small_horizontal_2.json | 75 -- .../blockstates/post_small_vertical.json | 89 -- .../blockstates/post_small_vertical_2.json | 89 -- .../furenikusroads/blockstates/red_arrow.json | 68 - .../blockstates/red_arrow_diagonal.json | 61 - .../blockstates/red_arrow_line.json | 82 -- .../furenikusroads/blockstates/red_bike.json | 65 - .../blockstates/red_bike_icon.json | 65 - .../furenikusroads/blockstates/red_bus.json | 65 - .../blockstates/red_chevron_left_a.json | 54 - .../blockstates/red_chevron_left_a_thin.json | 54 - .../blockstates/red_chevron_left_b.json | 54 - .../blockstates/red_chevron_left_b_thin.json | 54 - .../blockstates/red_chevron_mid.json | 103 -- .../blockstates/red_chevron_mid_left.json | 103 -- .../blockstates/red_chevron_mid_right.json | 103 -- .../blockstates/red_chevron_right_a.json | 54 - .../blockstates/red_chevron_right_a_thin.json | 54 - .../blockstates/red_chevron_right_b.json | 54 - .../blockstates/red_chevron_right_b_thin.json | 54 - .../blockstates/red_chevron_side_line.json | 99 -- .../furenikusroads/blockstates/red_city.json | 65 - .../furenikusroads/blockstates/red_clear.json | 65 - .../blockstates/red_crossing_paint.json | 60 - .../furenikusroads/blockstates/red_ctre.json | 65 - .../furenikusroads/blockstates/red_entry.json | 65 - .../blockstates/red_give_way.json | 42 - .../blockstates/red_junction_a.json | 85 -- .../blockstates/red_junction_b.json | 85 -- .../blockstates/red_junction_filter_left.json | 146 --- .../red_junction_filter_left_empty.json | 146 --- .../red_junction_filter_left_thin.json | 145 --- .../red_junction_filter_right.json | 146 --- .../red_junction_filter_right_empty.json | 146 --- .../red_junction_filter_right_thin.json | 145 --- .../red_junction_fork_chevron_mid.json | 53 - .../red_junction_fork_chevron_mid_thin.json | 53 - .../blockstates/red_junction_fork_mid.json | 53 - .../red_junction_fork_mid_thin.json | 53 - .../furenikusroads/blockstates/red_keep.json | 65 - .../furenikusroads/blockstates/red_lane.json | 65 - .../furenikusroads/blockstates/red_left.json | 65 - .../blockstates/red_merge_arrow.json | 42 - .../furenikusroads/blockstates/red_no.json | 65 - .../furenikusroads/blockstates/red_only.json | 65 - .../blockstates/red_pedestrian.json | 42 - .../furenikusroads/blockstates/red_right.json | 65 - .../furenikusroads/blockstates/red_slow.json | 65 - .../furenikusroads/blockstates/red_stop.json | 65 - .../furenikusroads/blockstates/red_taxi.json | 65 - .../furenikusroads/blockstates/red_town.json | 65 - .../furenikusroads/blockstates/red_turn.json | 65 - .../blockstates/road_block_.json | 35 - .../blockstates/road_block_blue.json | 40 - .../blockstates/road_block_concrete_1.json | 40 - .../blockstates/road_block_concrete_2.json | 40 - .../blockstates/road_block_dark.json | 40 - .../blockstates/road_block_diagonal_1_1.json | 41 - .../road_block_diagonal_1_1_mirror.json | 41 - .../blockstates/road_block_diagonal_1_2.json | 44 - .../road_block_diagonal_1_2_mirror.json | 41 - .../blockstates/road_block_diagonal_1_4.json | 41 - .../road_block_diagonal_1_4_mirror.json | 41 - .../blockstates/road_block_diagonal_1_8.json | 41 - .../road_block_diagonal_1_8_mirror.json | 41 - .../blockstates/road_block_diagonal_2_4.json | 41 - .../road_block_diagonal_2_4_mirror.json | 41 - .../blockstates/road_block_diagonal_2_8.json | 41 - .../road_block_diagonal_2_8_mirror.json | 41 - .../blockstates/road_block_diagonal_3_8.json | 41 - .../road_block_diagonal_3_8_mirror.json | 41 - .../blockstates/road_block_diagonal_4_8.json | 41 - .../road_block_diagonal_4_8_mirror.json | 41 - .../blockstates/road_block_dirt.json | 40 - .../blockstates/road_block_fine.json | 40 - .../blockstates/road_block_grass.json | 36 - .../blockstates/road_block_gravel.json | 40 - .../blockstates/road_block_green.json | 40 - .../blockstates/road_block_light.json | 40 - .../blockstates/road_block_muddy.json | 40 - .../blockstates/road_block_muddy_dried.json | 40 - .../blockstates/road_block_pale.json | 40 - .../blockstates/road_block_red.json | 40 - .../blockstates/road_block_sand.json | 40 - .../blockstates/road_block_standard.json | 40 - .../blockstates/road_block_stone.json | 40 - .../blockstates/road_block_white.json | 40 - .../blockstates/road_block_yellow.json | 40 - .../blockstates/road_factory.json | 83 -- .../blockstates/road_factory_electric.json | 87 -- .../furenikusroads/blockstates/road_snow.json | 12 - .../furenikusroads/blockstates/sidewalk.json | 40 - .../blockstates/sidewalk_clean.json | 40 - .../blockstates/sidewalk_dark.json | 40 - .../blockstates/sidewalk_tan.json | 40 - .../blockstates/speed_bump.json | 139 -- .../blockstates/street_block_a.json | 31 - .../blockstates/street_block_b.json | 31 - .../blockstates/street_light_1.json | 38 - .../blockstates/street_light_2.json | 33 - .../blockstates/street_light_3.json | 33 - .../blockstates/street_light_4.json | 33 - .../blockstates/street_light_5.json | 33 - .../blockstates/street_light_6.json | 33 - .../blockstates/tactile_crossing_bumps.json | 14 - .../blockstates/tar_distiller.json | 92 -- .../blockstates/tar_distiller_electric.json | 92 -- .../furenikusroads/blockstates/tar_fluid.json | 38 - .../blockstates/tarmac_cutter.json | 130 -- .../blockstates/tarmac_cutter_electric.json | 130 -- .../blockstates/wheel_stop.json | 107 -- .../blockstates/white_arrow.json | 68 - .../blockstates/white_arrow_diagonal.json | 61 - .../blockstates/white_arrow_line.json | 82 -- .../blockstates/white_bike.json | 65 - .../blockstates/white_bike_icon.json | 65 - .../furenikusroads/blockstates/white_bus.json | 65 - .../blockstates/white_chevron_left_a.json | 54 - .../white_chevron_left_a_thin.json | 54 - .../blockstates/white_chevron_left_b.json | 54 - .../white_chevron_left_b_thin.json | 54 - .../blockstates/white_chevron_mid.json | 103 -- .../blockstates/white_chevron_mid_left.json | 103 -- .../blockstates/white_chevron_mid_right.json | 103 -- .../blockstates/white_chevron_right_a.json | 54 - .../white_chevron_right_a_thin.json | 54 - .../blockstates/white_chevron_right_b.json | 54 - .../white_chevron_right_b_thin.json | 54 - .../blockstates/white_chevron_side_line.json | 99 -- .../blockstates/white_city.json | 65 - .../blockstates/white_clear.json | 65 - .../blockstates/white_crossing_paint.json | 60 - .../blockstates/white_ctre.json | 65 - .../blockstates/white_entry.json | 65 - .../blockstates/white_give_way.json | 42 - .../blockstates/white_junction_a.json | 85 -- .../blockstates/white_junction_b.json | 85 -- .../white_junction_filter_left.json | 145 --- .../white_junction_filter_left_empty.json | 145 --- .../white_junction_filter_left_thin.json | 144 -- .../white_junction_filter_right.json | 145 --- .../white_junction_filter_right_empty.json | 145 --- .../white_junction_filter_right_thin.json | 144 -- .../blockstates/white_keep.json | 65 - .../blockstates/white_lane.json | 65 - .../blockstates/white_left.json | 65 - .../furenikusroads/blockstates/white_no.json | 65 - .../blockstates/white_only.json | 65 - .../blockstates/white_right.json | 65 - .../blockstates/white_slow.json | 65 - .../blockstates/white_stop.json | 65 - .../blockstates/white_taxi.json | 65 - .../blockstates/white_town.json | 65 - .../blockstates/white_turn.json | 65 - .../blockstates/yellow_arrow.json | 68 - .../blockstates/yellow_arrow_diagonal.json | 61 - .../blockstates/yellow_arrow_line.json | 82 -- .../blockstates/yellow_bike.json | 65 - .../blockstates/yellow_bike_icon.json | 65 - .../blockstates/yellow_bus.json | 65 - .../blockstates/yellow_chevron_left_a.json | 54 - .../yellow_chevron_left_a_thin.json | 54 - .../blockstates/yellow_chevron_left_b.json | 54 - .../yellow_chevron_left_b_thin.json | 54 - .../blockstates/yellow_chevron_mid.json | 103 -- .../blockstates/yellow_chevron_mid_left.json | 103 -- .../blockstates/yellow_chevron_mid_right.json | 103 -- .../blockstates/yellow_chevron_right_a.json | 54 - .../yellow_chevron_right_a_thin.json | 54 - .../blockstates/yellow_chevron_right_b.json | 54 - .../yellow_chevron_right_b_thin.json | 54 - .../blockstates/yellow_chevron_side_line.json | 99 -- .../blockstates/yellow_city.json | 65 - .../blockstates/yellow_clear.json | 65 - .../blockstates/yellow_crossing_paint.json | 60 - .../blockstates/yellow_ctre.json | 65 - .../blockstates/yellow_entry.json | 65 - .../blockstates/yellow_give_way.json | 42 - .../blockstates/yellow_junction_a.json | 85 -- .../blockstates/yellow_junction_b.json | 85 -- .../yellow_junction_filter_left.json | 146 --- .../yellow_junction_filter_left_empty.json | 146 --- .../yellow_junction_filter_left_thin.json | 145 --- .../yellow_junction_filter_right.json | 146 --- .../yellow_junction_filter_right_empty.json | 146 --- .../yellow_junction_filter_right_thin.json | 145 --- .../yellow_junction_fork_chevron_mid.json | 53 - ...yellow_junction_fork_chevron_mid_thin.json | 53 - .../blockstates/yellow_junction_fork_mid.json | 53 - .../yellow_junction_fork_mid_thin.json | 53 - .../blockstates/yellow_keep.json | 65 - .../blockstates/yellow_lane.json | 65 - .../blockstates/yellow_left.json | 65 - .../blockstates/yellow_merge_arrow.json | 42 - .../furenikusroads/blockstates/yellow_no.json | 65 - .../blockstates/yellow_only.json | 65 - .../blockstates/yellow_pedestrian.json | 42 - .../blockstates/yellow_right.json | 65 - .../blockstates/yellow_slow.json | 65 - .../blockstates/yellow_stop.json | 65 - .../blockstates/yellow_taxi.json | 65 - .../blockstates/yellow_town.json | 65 - .../blockstates/yellow_turn.json | 65 - .../assets/furenikusroads/lang/en_gb.lang | 6 - .../assets/furenikusroads/lang/en_us.lang | 716 ---------- .../assets/furenikusroads/lang/it_it.lang | 720 ---------- .../assets/furenikusroads/lang/zh_cn.lang | 613 --------- .../resources/assets/furenikusroads/logo.png | Bin 67448 -> 0 bytes .../models/block/1_1_diagonal.json | 260 ---- .../models/block/1_2_diagonal.json | 169 --- .../models/block/1_2_diagonal_mirror.json | 171 --- .../models/block/1_4_diagonal.json | 117 -- .../models/block/1_4_diagonal_mirror.json | 119 -- .../models/block/1_8_diagonal.json | 117 -- .../models/block/1_8_diagonal_mirror.json | 119 -- .../models/block/2_4_diagonal.json | 118 -- .../models/block/2_4_diagonal_mirror.json | 119 -- .../models/block/2_8_diagonal.json | 118 -- .../models/block/2_8_diagonal_mirror.json | 119 -- .../models/block/3_8_diagonal.json | 118 -- .../models/block/3_8_diagonal_mirror.json | 119 -- .../models/block/4_8_diagonal.json | 118 -- .../models/block/4_8_diagonal_mirror.json | 119 -- .../models/block/barrier_bars_2_n.json | 81 -- .../models/block/barrier_bars_3_n.json | 85 -- .../models/block/barrier_bars_edge.json | 117 -- .../models/block/barrier_bars_edge_2.json | 81 -- .../block/barrier_bars_edge_2_inventory.json | 157 --- .../barrier_bars_edge_2_inventory_double.json | 287 ---- .../models/block/barrier_bars_edge_3.json | 85 -- .../block/barrier_bars_edge_3_inventory.json | 165 --- .../barrier_bars_edge_3_inventory_double.json | 295 ----- .../block/barrier_bars_edge_corner.json | 45 - .../block/barrier_bars_edge_corner_2.json | 45 - .../block/barrier_bars_edge_corner_3.json | 45 - .../block/barrier_bars_edge_inventory.json | 143 -- .../barrier_bars_edge_inventory_double.json | 260 ---- .../block/barrier_bars_edge_no_post.json | 57 - .../block/barrier_bars_edge_no_post_2.json | 33 - .../block/barrier_bars_edge_no_post_3.json | 35 - .../models/block/barrier_bars_edge_post.json | 33 - .../models/block/barrier_bars_inventory.json | 237 ---- .../models/block/barrier_bars_mid.json | 33 - .../block/barrier_bars_mid_2_small.json | 45 - .../block/barrier_bars_mid_3_small.json | 45 - .../models/block/barrier_bars_mid_small.json | 45 - .../models/block/barrier_bars_n.json | 117 -- .../models/block/barrier_concrete_edge.json | 209 --- .../block/barrier_concrete_edge_corner.json | 663 ---------- .../barrier_concrete_edge_inventory.json | 209 --- .../block/barrier_concrete_edge_left.json | 221 ---- .../barrier_concrete_edge_left_down.json | 496 ------- .../block/barrier_concrete_edge_right.json | 221 ---- .../barrier_concrete_edge_right_down.json | 518 -------- .../models/block/barrier_concrete_middle.json | 225 ---- .../block/barrier_concrete_middle_n.json | 225 ---- .../models/block/barrier_low_edge.json | 21 - .../models/block/barrier_low_edge_corner.json | 21 - .../models/block/barrier_low_edge_post.json | 46 - .../models/block/barrier_low_mid.json | 21 - .../models/block/barrier_low_mid_n.json | 21 - .../models/block/barrier_low_mid_post.json | 32 - .../models/block/barrier_standard.json | 73 -- .../models/block/barrier_standard_edge.json | 73 -- .../barrier_standard_edge_inventory.json | 104 -- ...arrier_standard_edge_inventory_double.json | 169 --- .../models/block/barrier_standard_edge_l.json | 74 -- .../block/barrier_standard_edge_post.json | 57 - .../models/block/barrier_standard_edge_r.json | 74 -- .../barrier_standard_middle_connect_n.json | 137 -- ...arrier_standard_middle_connect_widget.json | 73 -- .../block/barrier_standard_middle_end.json | 150 --- .../barrier_standard_middle_inventory.json | 168 --- .../block/barrier_standard_middle_post.json | 72 - .../models/block/barrier_standard_post.json | 123 -- .../models/block/barrier_tall_edge.json | 113 -- .../block/barrier_tall_edge_inventory.json | 142 -- .../barrier_tall_edge_inventory_double.json | 246 ---- .../models/block/barrier_tall_edge_l.json | 113 -- .../models/block/barrier_tall_edge_post.json | 70 - .../models/block/barrier_tall_edge_r.json | 113 -- .../block/barrier_tall_middle_connect_n.json | 215 --- .../barrier_tall_middle_connect_widget.json | 112 -- .../block/barrier_tall_middle_inventory.json | 215 --- .../models/block/barrier_wall_edge.json | 33 - .../block/barrier_wall_edge_corner.json | 33 - .../models/block/barrier_wall_edge_post.json | 33 - .../models/block/barrier_wall_inventory.json | 47 - .../block/barrier_wall_inventory_double.json | 59 - .../models/block/barrier_wall_mid.json | 33 - .../models/block/barrier_wall_mid_small.json | 33 - .../models/block/barrier_wall_n.json | 33 - .../models/block/barrier_wall_pole_edge.json | 46 - .../block/barrier_wall_pole_edge_corner.json | 46 - ...rrier_wall_pole_edge_double_inventory.json | 113 -- .../barrier_wall_pole_edge_inventory.json | 74 -- .../block/barrier_wall_pole_edge_l.json | 34 - .../block/barrier_wall_pole_edge_l_down.json | 46 - .../block/barrier_wall_pole_edge_r.json | 36 - .../block/barrier_wall_pole_edge_r_down.json | 49 - .../block/barrier_wall_pole_mid_small.json | 46 - .../models/block/barrier_wall_pole_n.json | 34 - .../models/block/base_plate.json | 105 -- .../models/block/base_plate_crusher.json | 102 -- .../models/block/base_plate_fabricator.json | 55 - .../models/block/base_plate_paint_filler.json | 88 -- .../models/block/base_plate_paint_oven.json | 50 - .../models/block/base_plate_road_factory.json | 73 -- .../block/base_plate_tar_distiller.json | 92 -- .../block/base_plate_tarmac_cutter.json | 43 - .../models/block/bollard_concrete_1.json | 93 -- .../models/block/bollard_folding_1_down.json | 83 -- .../block/bollard_folding_1_upright.json | 34 - .../models/block/bollard_folding_2_down.json | 83 -- .../block/bollard_folding_2_upright.json | 34 - .../models/block/bollard_portable.json | 94 -- .../models/block/bollard_smooth.json | 46 - .../models/block/bollard_smooth_light.json | 84 -- .../block/bollard_smooth_retract_down.json | 115 -- .../block/bollard_smooth_retract_up.json | 111 -- .../models/block/bollard_smooth_small.json | 46 - .../bollard_smooth_small_retract_down.json | 115 -- .../bollard_smooth_small_retract_up.json | 107 -- .../models/block/bollard_stumpy.json | 441 ------- .../block/bollard_stumpy_retracted.json | 441 ------- .../models/block/bollard_thicc.json | 441 ------- .../models/block/bollard_topped.json | 95 -- .../models/block/bollard_topped_ringed.json | 107 -- .../models/block/bollard_traffic_1.json | 34 - .../models/block/bollard_traffic_2.json | 184 --- .../furenikusroads/models/block/cats_eye.json | 171 --- .../models/block/cats_eye_double.json | 331 ----- .../block/chevron_side_line_down_a.json | 301 ----- .../block/chevron_side_line_down_b.json | 265 ---- .../models/block/chevron_side_line_up_a.json | 301 ----- .../models/block/chevron_side_line_up_b.json | 265 ---- .../models/block/compactor.json | 729 ----------- .../models/block/connected_diagonal_1.json | 105 -- .../models/block/connected_diagonal_2.json | 105 -- .../models/block/crossing_paint.json | 21 - .../models/block/crossing_paint_edge.json | 45 - .../furenikusroads/models/block/crusher.json | 630 --------- .../models/block/draincover_1.json | 350 ----- .../models/block/draincover_2.json | 305 ----- .../models/block/fabricator.json | 681 ---------- .../models/block/hatch_box.json | 749 ----------- .../models/block/hatch_box_e.json | 233 ---- .../models/block/hatch_box_mid.json | 557 -------- .../models/block/hatch_box_n.json | 161 --- .../models/block/hatch_box_s.json | 161 --- .../models/block/hatch_box_w.json | 233 ---- .../models/block/hopper_connect.json | 88 -- .../models/block/hopper_core.json | 21 - .../models/block/hopper_io_nesw.json | 326 ----- .../models/block/hopper_io_top.json | 330 ----- .../furenikusroads/models/block/icon.json | 20 - .../models/block/junction_chevron_left_a.json | 405 ------ .../block/junction_chevron_left_a_edge.json | 393 ------ .../block/junction_chevron_left_a_thin.json | 273 ---- .../junction_chevron_left_a_thin_edge.json | 273 ---- .../models/block/junction_chevron_left_b.json | 405 ------ .../block/junction_chevron_left_b_edge.json | 405 ------ .../block/junction_chevron_left_b_thin.json | 237 ---- .../junction_chevron_left_b_thin_edge.json | 237 ---- .../block/junction_chevron_left_down_a_1.json | 56 - .../block/junction_chevron_left_down_a_2.json | 164 --- .../block/junction_chevron_left_down_a_3.json | 224 ---- .../block/junction_chevron_left_down_a_4.json | 320 ----- .../block/junction_chevron_left_down_b_1.json | 56 - .../block/junction_chevron_left_down_b_2.json | 164 --- .../block/junction_chevron_left_down_b_3.json | 176 --- .../block/junction_chevron_left_down_b_4.json | 368 ------ .../junction_chevron_left_down_thin_a_1.json | 33 - .../junction_chevron_left_down_thin_a_2.json | 105 -- .../junction_chevron_left_down_thin_a_3.json | 189 --- .../junction_chevron_left_down_thin_a_4.json | 261 ---- .../junction_chevron_left_down_thin_b_1.json | 69 - .../junction_chevron_left_down_thin_b_2.json | 105 -- .../junction_chevron_left_down_thin_b_3.json | 225 ---- .../junction_chevron_left_down_thin_b_4.json | 225 ---- .../block/junction_chevron_right_a.json | 405 ------ .../block/junction_chevron_right_a_edge.json | 393 ------ .../block/junction_chevron_right_a_thin.json | 273 ---- .../junction_chevron_right_a_thin_edge.json | 273 ---- .../block/junction_chevron_right_b.json | 405 ------ .../block/junction_chevron_right_b_edge.json | 405 ------ .../block/junction_chevron_right_b_thin.json | 237 ---- .../junction_chevron_right_b_thin_edge.json | 237 ---- .../junction_chevron_right_down_a_1.json | 56 - .../junction_chevron_right_down_a_2.json | 164 --- .../junction_chevron_right_down_a_3.json | 224 ---- .../junction_chevron_right_down_a_4.json | 308 ----- .../junction_chevron_right_down_b_1.json | 56 - .../junction_chevron_right_down_b_2.json | 164 --- .../junction_chevron_right_down_b_3.json | 164 --- .../junction_chevron_right_down_b_4.json | 344 ----- .../junction_chevron_right_down_thin_a_1.json | 33 - .../junction_chevron_right_down_thin_a_2.json | 105 -- .../junction_chevron_right_down_thin_a_3.json | 213 --- .../junction_chevron_right_down_thin_a_4.json | 261 ---- .../junction_chevron_right_down_thin_b_1.json | 69 - .../junction_chevron_right_down_thin_b_2.json | 105 -- .../junction_chevron_right_down_thin_b_3.json | 225 ---- .../junction_chevron_right_down_thin_b_4.json | 225 ---- .../models/block/junction_filter_left_1.json | 105 -- .../models/block/junction_filter_left_2.json | 105 -- .../models/block/junction_filter_left_3.json | 105 -- .../models/block/junction_filter_left_4.json | 93 -- .../block/junction_filter_left_thin_1.json | 105 -- .../block/junction_filter_left_thin_2.json | 105 -- .../block/junction_filter_left_thin_3.json | 105 -- .../block/junction_filter_left_thin_4.json | 81 -- .../models/block/junction_filter_right_1.json | 105 -- .../models/block/junction_filter_right_2.json | 105 -- .../models/block/junction_filter_right_3.json | 105 -- .../models/block/junction_filter_right_4.json | 93 -- .../block/junction_filter_right_thin_1.json | 105 -- .../block/junction_filter_right_thin_2.json | 105 -- .../block/junction_filter_right_thin_3.json | 105 -- .../block/junction_filter_right_thin_4.json | 81 -- .../furenikusroads/models/block/kerb_a.json | 44 - .../furenikusroads/models/block/kerb_b.json | 44 - .../furenikusroads/models/block/kerb_inv.json | 47 - .../models/block/kerb_left.json | 44 - .../models/block/kerb_left_b.json | 44 - .../models/block/kerb_right.json | 44 - .../models/block/kerb_right_b.json | 44 - .../models/block/line_far_side.json | 21 - .../models/block/line_filter_lane.json | 21 - .../models/block/line_thin_crossing.json | 21 - .../models/block/manhole_cover_round.json | 418 ------ .../models/block/manhole_cover_square.json | 610 --------- .../furenikusroads/models/block/nomodel.json | 3 - .../models/block/paint_filler_station.json | 725 ----------- .../block/paint_filler_station_gunloaded.json | 241 ---- .../models/block/paint_oven.json | 623 --------- .../models/block/post_large.json | 21 - .../models/block/post_large_base.json | 21 - .../models/block/post_large_base_2.json | 21 - .../block/post_large_horizontal_mid.json | 21 - .../block/post_large_horizontal_side.json | 21 - .../models/block/post_large_under.json | 21 - .../models/block/post_large_up.json | 21 - .../models/block/post_large_up_2.json | 21 - .../models/block/post_large_v_to_h.json | 46 - .../models/block/post_large_v_to_h_2.json | 22 - .../models/block/post_medium.json | 21 - .../models/block/post_medium_base.json | 21 - .../models/block/post_medium_base_2.json | 21 - .../block/post_medium_horizontal_mid.json | 21 - .../block/post_medium_horizontal_side.json | 21 - .../models/block/post_medium_under.json | 21 - .../models/block/post_medium_up.json | 21 - .../models/block/post_medium_up_2.json | 21 - .../models/block/post_medium_v_to_h.json | 34 - .../models/block/post_medium_v_to_h_2.json | 22 - .../models/block/post_small.json | 21 - .../models/block/post_small_base.json | 21 - .../models/block/post_small_base_2.json | 21 - .../block/post_small_horizontal_mid.json | 21 - .../block/post_small_horizontal_side.json | 21 - .../models/block/post_small_under.json | 21 - .../models/block/post_small_up.json | 21 - .../models/block/post_small_up_2.json | 21 - .../models/block/post_small_v_to_h.json | 34 - .../models/block/post_small_v_to_h_2.json | 22 - .../models/block/road_10_16.json | 21 - .../models/block/road_11_16.json | 21 - .../models/block/road_12_16.json | 21 - .../models/block/road_13_16.json | 21 - .../models/block/road_14_16.json | 21 - .../models/block/road_15_16.json | 21 - .../models/block/road_16_16.json | 21 - .../models/block/road_1_16.json | 21 - .../models/block/road_2_16.json | 21 - .../models/block/road_3_16.json | 21 - .../models/block/road_4_16.json | 21 - .../models/block/road_5_16.json | 21 - .../models/block/road_6_16.json | 21 - .../models/block/road_7_16.json | 21 - .../models/block/road_8_16.json | 21 - .../models/block/road_9_16.json | 21 - .../models/block/road_factory.json | 531 -------- .../models/block/road_factory_fluid_left.json | 121 -- .../models/block/road_factory_fluid_up.json | 131 -- .../models/block/side_line_short.json | 21 - .../models/block/sidewalk_east.json | 20 - .../models/block/sidewalk_north.json | 20 - .../models/block/sidewalk_north_east.json | 20 - .../models/block/sidewalk_north_west.json | 20 - .../models/block/sidewalk_south.json | 20 - .../models/block/sidewalk_south_east.json | 20 - .../models/block/sidewalk_south_west.json | 20 - .../models/block/sidewalk_west.json | 20 - .../models/block/sign_rigging_h.json | 161 --- .../models/block/sign_rigging_v.json | 161 --- .../models/block/sign_rigging_v_to_h.json | 233 ---- .../models/block/sign_rigging_v_to_h2.json | 183 --- .../models/block/speed_bump_end_l.json | 100 -- .../models/block/speed_bump_end_r.json | 100 -- .../models/block/speed_bump_full_l.json | 48 - .../models/block/speed_bump_full_r.json | 48 - .../models/block/speed_bump_inventory.json | 152 --- .../models/block/street_light_1.json | 274 ---- .../models/block/street_light_2.json | 100 -- .../models/block/street_light_3.json | 62 - .../models/block/street_light_4.json | 75 -- .../models/block/street_light_5.json | 322 ----- .../models/block/street_light_6.json | 101 -- .../models/block/tactile_marker.json | 777 ----------- .../models/block/tar_distiller.json | 559 -------- .../block/tar_distiller_fluid_out_left.json | 116 -- .../block/tar_distiller_fluid_out_right.json | 117 -- .../block/tar_distiller_fluid_out_top.json | 105 -- .../models/block/tarmac_cutter.json | 1159 ----------------- .../models/block/tarmac_cutter_blade.json | 175 --- .../models/block/tarmac_cutter_block.json | 796 ----------- .../models/block/tile_arrow.json | 257 ---- .../models/block/tile_arrow_diagonal.json | 561 -------- .../block/tile_arrow_diagonal_line_full.json | 489 ------- .../models/block/tile_arrow_line.json | 137 -- ...tile_arrow_line_connect_diagonal_left.json | 293 ----- ...ile_arrow_line_connect_diagonal_right.json | 293 ----- .../block/tile_arrow_line_connect_left.json | 113 -- .../tile_arrow_line_connect_left_full.json | 197 --- .../block/tile_arrow_line_connect_right.json | 113 -- .../tile_arrow_line_connect_right_full.json | 197 --- .../block/tile_arrow_line_connect_up.json | 89 -- .../models/block/tile_arrow_line_inv.json | 197 --- .../models/block/tile_arrow_side.json | 233 ---- .../models/block/tile_full.json | 47 - .../models/block/wheel_stop.json | 45 - .../models/blocks/roads/road_block_1.json | 21 + .../models/blocks/roads/road_block_10.json | 21 + .../models/blocks/roads/road_block_11.json | 21 + .../models/blocks/roads/road_block_12.json | 21 + .../models/blocks/roads/road_block_13.json | 21 + .../models/blocks/roads/road_block_14.json | 21 + .../models/blocks/roads/road_block_15.json | 21 + .../models/blocks/roads/road_block_16.json | 21 + .../models/blocks/roads/road_block_2.json | 21 + .../models/blocks/roads/road_block_3.json | 21 + .../models/blocks/roads/road_block_4.json | 21 + .../models/blocks/roads/road_block_5.json | 21 + .../models/blocks/roads/road_block_6.json | 21 + .../models/blocks/roads/road_block_7.json | 21 + .../models/blocks/roads/road_block_8.json | 21 + .../models/blocks/roads/road_block_9.json | 21 + .../furenikusroads/models/item/cats_eye.json | 169 --- .../models/item/cement_dust.json | 6 - .../models/item/clinker_mix.json | 6 - .../furenikusroads/models/item/coal_coke.json | 6 - .../models/item/diamond_nugget.json | 6 - .../models/item/impact_wrench.json | 6 - .../models/item/large_glass_tank.json | 49 - .../models/item/limestone_dust.json | 6 - .../models/item/machine_frame.json | 195 --- .../models/item/machine_frame_electric.json | 195 --- .../furenikusroads/models/item/paint_gun.json | 358 ----- .../models/item/paint_gun_barrel.json | 65 - .../models/item/paint_gun_display.json | 154 --- .../models/item/paint_scraper.json | 6 - .../models/item/pneumatic_drill.json | 143 -- .../models/item/pneumatic_drill_bit.json | 87 -- .../models/item/sidewalk_fragment_clean.json | 6 - .../models/item/sidewalk_fragment_dark.json | 6 - .../item/sidewalk_fragment_standard.json | 6 - .../models/item/sidewalk_fragment_tan.json | 6 - .../models/item/small_glass_tank.json | 50 - .../item/tarmac_cutter_blade_1_diamond.json | 6 - .../item/tarmac_cutter_blade_1_gold.json | 6 - .../item/tarmac_cutter_blade_1_iron.json | 6 - .../item/tarmac_cutter_blade_2_diamond.json | 6 - .../item/tarmac_cutter_blade_2_gold.json | 6 - .../item/tarmac_cutter_blade_2_iron.json | 6 - .../item/tarmac_cutter_blade_4_diamond.json | 6 - .../item/tarmac_cutter_blade_4_gold.json | 6 - .../item/tarmac_cutter_blade_4_iron.json | 6 - .../item/tarmac_cutter_blade_8_diamond.json | 6 - .../item/tarmac_cutter_blade_8_gold.json | 6 - .../item/tarmac_cutter_blade_8_iron.json | 6 - .../models/item/tarmac_fragment_blue.json | 6 - .../item/tarmac_fragment_concrete_1.json | 6 - .../item/tarmac_fragment_concrete_2.json | 6 - .../models/item/tarmac_fragment_dark.json | 6 - .../models/item/tarmac_fragment_dirt.json | 6 - .../models/item/tarmac_fragment_fine.json | 6 - .../models/item/tarmac_fragment_grass.json | 6 - .../models/item/tarmac_fragment_gravel.json | 6 - .../models/item/tarmac_fragment_green.json | 6 - .../models/item/tarmac_fragment_light.json | 6 - .../models/item/tarmac_fragment_muddy.json | 6 - .../models/item/tarmac_fragment_pale.json | 6 - .../models/item/tarmac_fragment_red.json | 6 - .../models/item/tarmac_fragment_sand.json | 6 - .../models/item/tarmac_fragment_standard.json | 6 - .../models/item/tarmac_fragment_stone.json | 6 - .../models/item/tarmac_fragment_white.json | 6 - .../models/item/tarmac_fragment_yellow.json | 6 - .../models/item/tarmac_rammer.json | 80 -- .../models/item/tool_handle.json | 6 - .../furenikusroads/models/item/wrench.json | 6 - .../assets/furenikusroads/models/test.json | 301 ----- .../optifine/emissive.properties | 1 - .../assets/furenikusroads/paints/_README.txt | 11 - .../furenikusroads/paints/chevron_icon.json | 36 - .../furenikusroads/paints/chevron_mid_1.json | 40 - .../furenikusroads/paints/chevron_mid_2.json | 40 - .../paints/chevron_mid_left_1.json | 40 - .../paints/chevron_mid_left_2.json | 40 - .../paints/chevron_mid_right_1.json | 40 - .../paints/chevron_mid_right_2.json | 40 - .../paints/chevron_mid_thin_1.json | 40 - .../paints/chevron_mid_thin_2.json | 40 - .../paints/chevron_mid_thin_left_1.json | 40 - .../paints/chevron_mid_thin_left_2.json | 40 - .../paints/chevron_mid_thin_right_1.json | 40 - .../paints/chevron_mid_thin_right_2.json | 40 - .../paints/crossing_diagonal_1.json | 40 - .../paints/crossing_diagonal_2.json | 40 - .../paints/crossing_diagonal_3.json | 40 - .../paints/crossing_diagonal_4.json | 40 - .../assets/furenikusroads/paints/empty.json | 24 - .../furenikusroads/paints/give_way_high.json | 40 - .../furenikusroads/paints/give_way_low.json | 40 - .../furenikusroads/paints/junction_in_a.json | 24 - .../furenikusroads/paints/junction_in_b.json | 24 - .../furenikusroads/paints/junction_mid_1.json | 40 - .../furenikusroads/paints/junction_mid_2.json | 40 - .../furenikusroads/paints/junction_mid_3.json | 40 - .../furenikusroads/paints/junction_mid_a.json | 24 - .../furenikusroads/paints/junction_mid_b.json | 24 - .../paints/junction_mid_chevron_2.json | 40 - .../paints/junction_mid_chevron_3.json | 40 - .../paints/junction_mid_chevron_4.json | 40 - .../paints/junction_mid_chevron_thin_3.json | 40 - .../junction_mid_line_connection_a.json | 36 - .../junction_mid_line_connection_b.json | 36 - .../junction_mid_line_connection_c.json | 36 - .../junction_mid_line_connection_d.json | 36 - .../paints/junction_mid_thin_1.json | 40 - .../paints/junction_mid_thin_2.json | 40 - .../paints/junction_mid_thin_3.json | 40 - .../furenikusroads/paints/junction_out_a.json | 24 - .../furenikusroads/paints/junction_out_b.json | 24 - .../junction_side_line_connection_a.json | 36 - .../junction_side_line_connection_b.json | 36 - .../junction_side_line_connection_c.json | 36 - .../junction_side_line_connection_d.json | 36 - ...on_side_line_connection_thick_thick_a.json | 36 - ...on_side_line_connection_thick_thick_b.json | 36 - ...on_side_line_connection_thick_thick_c.json | 36 - ...on_side_line_connection_thick_thick_d.json | 36 - .../junction_side_line_connection_thin_a.json | 36 - .../junction_side_line_connection_thin_b.json | 36 - .../junction_side_line_connection_thin_c.json | 36 - .../junction_side_line_connection_thin_d.json | 36 - .../furenikusroads/paints/letter_a.json | 36 - .../furenikusroads/paints/letter_b.json | 36 - .../furenikusroads/paints/letter_c.json | 36 - .../furenikusroads/paints/letter_d.json | 36 - .../furenikusroads/paints/letter_e.json | 36 - .../furenikusroads/paints/letter_f.json | 36 - .../furenikusroads/paints/letter_g.json | 36 - .../furenikusroads/paints/letter_h.json | 40 - .../furenikusroads/paints/letter_i.json | 72 - .../furenikusroads/paints/letter_j.json | 40 - .../furenikusroads/paints/letter_k.json | 40 - .../furenikusroads/paints/letter_l.json | 40 - .../furenikusroads/paints/letter_m.json | 40 - .../furenikusroads/paints/letter_n.json | 72 - .../furenikusroads/paints/letter_o.json | 40 - .../furenikusroads/paints/letter_p.json | 40 - .../furenikusroads/paints/letter_q.json | 40 - .../furenikusroads/paints/letter_r.json | 40 - .../furenikusroads/paints/letter_s.json | 40 - .../furenikusroads/paints/letter_t.json | 72 - .../furenikusroads/paints/letter_u.json | 40 - .../furenikusroads/paints/letter_v.json | 40 - .../furenikusroads/paints/letter_w.json | 40 - .../furenikusroads/paints/letter_x.json | 40 - .../furenikusroads/paints/letter_y.json | 72 - .../furenikusroads/paints/letter_z.json | 72 - .../paints/merge_arrow_high.json | 40 - .../paints/merge_arrow_low.json | 40 - .../furenikusroads/paints/number_0.json | 40 - .../furenikusroads/paints/number_1.json | 72 - .../furenikusroads/paints/number_2.json | 40 - .../furenikusroads/paints/number_3.json | 40 - .../furenikusroads/paints/number_4.json | 40 - .../furenikusroads/paints/number_5.json | 40 - .../furenikusroads/paints/number_6.json | 40 - .../furenikusroads/paints/number_7.json | 40 - .../furenikusroads/paints/number_8.json | 40 - .../furenikusroads/paints/number_9.json | 40 - .../paints/pedestrian_high.json | 40 - .../furenikusroads/paints/pedestrian_low.json | 40 - .../furenikusroads/paints/punct_exclaim.json | 72 - .../furenikusroads/paints/punct_hash.json | 40 - .../furenikusroads/paints/punct_question.json | 40 - .../furenikusroads/paints/punct_slash.json | 40 - .../paints/text_bike_icon_l.json | 40 - .../paints/text_bike_icon_m.json | 40 - .../paints/text_bike_icon_r.json | 40 - .../paints/text_bike_icon_small.json | 36 - .../furenikusroads/paints/text_bike_l.json | 40 - .../furenikusroads/paints/text_bike_m.json | 40 - .../furenikusroads/paints/text_bike_r.json | 40 - .../paints/text_bike_small.json | 68 - .../furenikusroads/paints/text_bus_l.json | 40 - .../furenikusroads/paints/text_bus_m.json | 40 - .../furenikusroads/paints/text_bus_r.json | 40 - .../furenikusroads/paints/text_bus_small.json | 68 - .../furenikusroads/paints/text_city_l.json | 40 - .../furenikusroads/paints/text_city_m.json | 40 - .../furenikusroads/paints/text_city_r.json | 40 - .../paints/text_city_small.json | 68 - .../furenikusroads/paints/text_clear_l.json | 40 - .../furenikusroads/paints/text_clear_m.json | 40 - .../furenikusroads/paints/text_clear_r.json | 40 - .../paints/text_clear_small.json | 68 - .../furenikusroads/paints/text_ctre_l.json | 40 - .../furenikusroads/paints/text_ctre_m.json | 40 - .../furenikusroads/paints/text_ctre_r.json | 40 - .../paints/text_ctre_small.json | 68 - .../furenikusroads/paints/text_entry_l.json | 40 - .../furenikusroads/paints/text_entry_m.json | 40 - .../furenikusroads/paints/text_entry_r.json | 40 - .../paints/text_entry_small.json | 68 - .../furenikusroads/paints/text_keep_l.json | 40 - .../furenikusroads/paints/text_keep_m.json | 40 - .../furenikusroads/paints/text_keep_r.json | 40 - .../paints/text_keep_small.json | 68 - .../furenikusroads/paints/text_lane_l.json | 40 - .../furenikusroads/paints/text_lane_m.json | 40 - .../furenikusroads/paints/text_lane_r.json | 40 - .../paints/text_lane_small.json | 68 - .../furenikusroads/paints/text_left_l.json | 40 - .../furenikusroads/paints/text_left_m.json | 40 - .../furenikusroads/paints/text_left_r.json | 40 - .../paints/text_left_small.json | 68 - .../furenikusroads/paints/text_no_l.json | 40 - .../furenikusroads/paints/text_no_m.json | 40 - .../furenikusroads/paints/text_no_r.json | 40 - .../furenikusroads/paints/text_no_small.json | 68 - .../furenikusroads/paints/text_only_l.json | 40 - .../furenikusroads/paints/text_only_m.json | 40 - .../furenikusroads/paints/text_only_r.json | 40 - .../paints/text_only_small.json | 68 - .../furenikusroads/paints/text_right_l.json | 40 - .../furenikusroads/paints/text_right_m.json | 40 - .../furenikusroads/paints/text_right_r.json | 40 - .../paints/text_right_small.json | 68 - .../furenikusroads/paints/text_slow_l.json | 40 - .../furenikusroads/paints/text_slow_m.json | 40 - .../furenikusroads/paints/text_slow_r.json | 40 - .../paints/text_slow_small.json | 68 - .../furenikusroads/paints/text_stop_l.json | 40 - .../furenikusroads/paints/text_stop_m.json | 40 - .../furenikusroads/paints/text_stop_r.json | 40 - .../paints/text_stop_small.json | 68 - .../furenikusroads/paints/text_taxi_l.json | 40 - .../furenikusroads/paints/text_taxi_m.json | 40 - .../furenikusroads/paints/text_taxi_r.json | 40 - .../paints/text_taxi_small.json | 68 - .../furenikusroads/paints/text_town_l.json | 40 - .../furenikusroads/paints/text_town_m.json | 40 - .../furenikusroads/paints/text_town_r.json | 40 - .../paints/text_town_small.json | 68 - .../furenikusroads/paints/text_turn_l.json | 40 - .../furenikusroads/paints/text_turn_m.json | 40 - .../furenikusroads/paints/text_turn_r.json | 40 - .../paints/text_turn_small.json | 68 - .../paints/wheelchair_icon.json | 36 - .../recipes/cats_eye_green.json | 17 - .../recipes/cats_eye_green_b.json | 17 - .../recipes/cats_eye_green_c.json | 17 - .../recipes/cats_eye_green_d.json | 17 - .../furenikusroads/recipes/cats_eye_red.json | 17 - .../recipes/cats_eye_red_b.json | 17 - .../recipes/cats_eye_red_c.json | 17 - .../recipes/cats_eye_red_d.json | 17 - .../recipes/cats_eye_white.json | 17 - .../recipes/cats_eye_white_b.json | 17 - .../recipes/cats_eye_white_c.json | 17 - .../recipes/cats_eye_white_d.json | 17 - .../recipes/cats_eye_yellow.json | 17 - .../recipes/cats_eye_yellow_b.json | 17 - .../recipes/cats_eye_yellow_c.json | 17 - .../recipes/cats_eye_yellow_d.json | 17 - .../furenikusroads/recipes/clinker_mix.json | 15 - .../furenikusroads/recipes/compactor.json | 31 - .../recipes/compactor_electric.json | 31 - .../furenikusroads/recipes/concrete_1.json | 22 - .../furenikusroads/recipes/concrete_2.json | 21 - .../furenikusroads/recipes/crusher.json | 31 - .../recipes/crusher_electric.json | 31 - .../furenikusroads/recipes/diamond.json | 17 - .../recipes/diamond_nugget.json | 12 - .../furenikusroads/recipes/fabricator.json | 23 - .../recipes/fabricator_electric.json | 23 - .../recipes/kerb_standard_red.json | 46 - .../recipes/kerb_standard_white.json | 46 - .../recipes/kerb_standard_yellow.json | 46 - .../recipes/large_glass_tank.json | 16 - .../recipes/limestone_block.json | 17 - .../furenikusroads/recipes/machine_frame.json | 23 - .../recipes/machine_frame_electric.json | 23 - .../furenikusroads/recipes/paint_filler.json | 27 - .../recipes/paint_filler_electric.json | 27 - .../recipes/paint_filler_hopper.json | 27 - .../furenikusroads/recipes/paint_gun.json | 32 - .../recipes/paint_gun_barrel.json | 17 - .../recipes/paint_gun_display.json | 32 - .../furenikusroads/recipes/paint_oven.json | 24 - .../recipes/paint_oven_electric.json | 24 - .../furenikusroads/recipes/paint_scraper.json | 19 - .../recipes/pneumatic_drill.json | 26 - .../recipes/pneumatic_drill_bit.json | 20 - .../recipes/road_block_muddy.json | 23 - .../recipes/road_block_muddy_dried.json | 25 - .../furenikusroads/recipes/road_factory.json | 30 - .../recipes/road_factory_electric.json | 30 - .../furenikusroads/recipes/sidewalk.json | 19 - .../furenikusroads/recipes/sidewalk_2.json | 19 - .../recipes/sidewalk_block_a_0.json | 20 - .../recipes/sidewalk_block_a_1.json | 20 - .../recipes/sidewalk_block_a_10.json | 20 - .../recipes/sidewalk_block_a_11.json | 20 - .../recipes/sidewalk_block_a_12.json | 20 - .../recipes/sidewalk_block_a_13.json | 19 - .../recipes/sidewalk_block_a_14.json | 19 - .../recipes/sidewalk_block_a_15.json | 20 - .../recipes/sidewalk_block_a_2.json | 20 - .../recipes/sidewalk_block_a_3.json | 20 - .../recipes/sidewalk_block_a_4.json | 20 - .../recipes/sidewalk_block_a_5.json | 19 - .../recipes/sidewalk_block_a_6.json | 19 - .../recipes/sidewalk_block_a_7.json | 20 - .../recipes/sidewalk_block_a_8.json | 20 - .../recipes/sidewalk_block_a_9.json | 20 - .../recipes/sidewalk_block_b_0.json | 20 - .../recipes/sidewalk_block_b_1.json | 20 - .../recipes/sidewalk_block_b_10.json | 20 - .../recipes/sidewalk_block_b_11.json | 20 - .../recipes/sidewalk_block_b_12.json | 20 - .../recipes/sidewalk_block_b_13.json | 19 - .../recipes/sidewalk_block_b_14.json | 19 - .../recipes/sidewalk_block_b_15.json | 20 - .../recipes/sidewalk_block_b_2.json | 20 - .../recipes/sidewalk_block_b_3.json | 20 - .../recipes/sidewalk_block_b_4.json | 20 - .../recipes/sidewalk_block_b_5.json | 19 - .../recipes/sidewalk_block_b_6.json | 19 - .../recipes/sidewalk_block_b_7.json | 20 - .../recipes/sidewalk_block_b_8.json | 20 - .../recipes/sidewalk_block_b_9.json | 20 - .../recipes/sidewalk_clean.json | 24 - .../furenikusroads/recipes/sidewalk_dark.json | 24 - .../furenikusroads/recipes/sidewalk_tan.json | 24 - .../recipes/small_glass_tank.json | 21 - .../furenikusroads/recipes/tar_distiller.json | 24 - .../recipes/tar_distiller_electric.json | 24 - .../furenikusroads/recipes/tarmac_blue_1.json | 25 - .../recipes/tarmac_blue_10.json | 25 - .../recipes/tarmac_blue_11.json | 25 - .../recipes/tarmac_blue_12.json | 25 - .../recipes/tarmac_blue_13.json | 25 - .../recipes/tarmac_blue_14.json | 25 - .../recipes/tarmac_blue_15.json | 25 - .../recipes/tarmac_blue_16.json | 25 - .../furenikusroads/recipes/tarmac_blue_2.json | 25 - .../furenikusroads/recipes/tarmac_blue_3.json | 25 - .../furenikusroads/recipes/tarmac_blue_4.json | 25 - .../furenikusroads/recipes/tarmac_blue_5.json | 25 - .../furenikusroads/recipes/tarmac_blue_6.json | 25 - .../furenikusroads/recipes/tarmac_blue_7.json | 25 - .../furenikusroads/recipes/tarmac_blue_8.json | 25 - .../furenikusroads/recipes/tarmac_blue_9.json | 25 - .../furenikusroads/recipes/tarmac_cutter.json | 20 - .../tarmac_cutter_blade_diamond_1.json | 21 - .../tarmac_cutter_blade_diamond_2.json | 16 - .../tarmac_cutter_blade_diamond_4.json | 16 - .../tarmac_cutter_blade_diamond_8.json | 16 - .../recipes/tarmac_cutter_blade_gold_1.json | 20 - .../recipes/tarmac_cutter_blade_gold_2.json | 17 - .../recipes/tarmac_cutter_blade_gold_4.json | 17 - .../recipes/tarmac_cutter_blade_gold_8.json | 17 - .../recipes/tarmac_cutter_blade_iron_1.json | 20 - .../recipes/tarmac_cutter_blade_iron_2.json | 17 - .../recipes/tarmac_cutter_blade_iron_4.json | 17 - .../recipes/tarmac_cutter_blade_iron_8.json | 16 - .../recipes/tarmac_cutter_electric.json | 20 - .../recipes/tarmac_green_1.json | 25 - .../recipes/tarmac_green_10.json | 25 - .../recipes/tarmac_green_11.json | 25 - .../recipes/tarmac_green_12.json | 25 - .../recipes/tarmac_green_13.json | 25 - .../recipes/tarmac_green_14.json | 25 - .../recipes/tarmac_green_15.json | 25 - .../recipes/tarmac_green_16.json | 25 - .../recipes/tarmac_green_2.json | 25 - .../recipes/tarmac_green_3.json | 25 - .../recipes/tarmac_green_4.json | 25 - .../recipes/tarmac_green_5.json | 25 - .../recipes/tarmac_green_6.json | 25 - .../recipes/tarmac_green_7.json | 25 - .../recipes/tarmac_green_8.json | 25 - .../recipes/tarmac_green_9.json | 25 - .../furenikusroads/recipes/tarmac_rammer.json | 20 - .../furenikusroads/recipes/tarmac_red_1.json | 25 - .../furenikusroads/recipes/tarmac_red_10.json | 25 - .../furenikusroads/recipes/tarmac_red_11.json | 25 - .../furenikusroads/recipes/tarmac_red_12.json | 25 - .../furenikusroads/recipes/tarmac_red_13.json | 25 - .../furenikusroads/recipes/tarmac_red_14.json | 25 - .../furenikusroads/recipes/tarmac_red_15.json | 25 - .../furenikusroads/recipes/tarmac_red_16.json | 25 - .../furenikusroads/recipes/tarmac_red_2.json | 25 - .../furenikusroads/recipes/tarmac_red_3.json | 25 - .../furenikusroads/recipes/tarmac_red_4.json | 25 - .../furenikusroads/recipes/tarmac_red_5.json | 25 - .../furenikusroads/recipes/tarmac_red_6.json | 25 - .../furenikusroads/recipes/tarmac_red_7.json | 25 - .../furenikusroads/recipes/tarmac_red_8.json | 25 - .../furenikusroads/recipes/tarmac_red_9.json | 25 - .../recipes/tarmac_white_1.json | 25 - .../recipes/tarmac_white_10.json | 25 - .../recipes/tarmac_white_11.json | 25 - .../recipes/tarmac_white_12.json | 25 - .../recipes/tarmac_white_13.json | 25 - .../recipes/tarmac_white_14.json | 25 - .../recipes/tarmac_white_15.json | 25 - .../recipes/tarmac_white_16.json | 25 - .../recipes/tarmac_white_2.json | 25 - .../recipes/tarmac_white_3.json | 25 - .../recipes/tarmac_white_4.json | 25 - .../recipes/tarmac_white_5.json | 25 - .../recipes/tarmac_white_6.json | 25 - .../recipes/tarmac_white_7.json | 25 - .../recipes/tarmac_white_8.json | 25 - .../recipes/tarmac_white_9.json | 25 - .../recipes/tarmac_yellow_1.json | 25 - .../recipes/tarmac_yellow_10.json | 25 - .../recipes/tarmac_yellow_11.json | 25 - .../recipes/tarmac_yellow_12.json | 25 - .../recipes/tarmac_yellow_13.json | 25 - .../recipes/tarmac_yellow_14.json | 25 - .../recipes/tarmac_yellow_15.json | 25 - .../recipes/tarmac_yellow_16.json | 25 - .../recipes/tarmac_yellow_2.json | 25 - .../recipes/tarmac_yellow_3.json | 25 - .../recipes/tarmac_yellow_4.json | 25 - .../recipes/tarmac_yellow_5.json | 25 - .../recipes/tarmac_yellow_6.json | 25 - .../recipes/tarmac_yellow_7.json | 25 - .../recipes/tarmac_yellow_8.json | 25 - .../recipes/tarmac_yellow_9.json | 25 - .../furenikusroads/recipes/tool_handle.json | 20 - .../assets/furenikusroads/recipes/wrench.json | 19 - .../assets/furenikusroads/sounds.json | 12 - .../furenikusroads/sounds/pneumatic_drill.ogg | Bin 19420 -> 0 bytes .../generic_blocks_2.png => block/cement.png} | Bin .../clinker.png} | Bin .../crushed_rock.png} | Bin .../limestone.png} | Bin .../roads}/road_block_blue.png | Bin .../roads}/road_block_concrete_1.png | Bin .../roads}/road_block_concrete_2.png | Bin .../roads}/road_block_dark.png | Bin .../roads}/road_block_fine.png | Bin .../roads}/road_block_green.png | Bin .../roads}/road_block_light.png | Bin .../roads}/road_block_muddy.png | Bin .../roads}/road_block_muddy_dried.png | Bin .../roads}/road_block_pale.png | Bin .../roads}/road_block_red.png | Bin .../roads}/road_block_standard.png | Bin .../roads}/road_block_white.png | Bin .../roads}/road_block_yellow.png | Bin .../{blocks => block/roads}/sidewalk.png | Bin .../roads}/sidewalk_clean.png | Bin .../{blocks => block/roads}/sidewalk_dark.png | Bin .../{blocks => block/roads}/sidewalk_tan.png | Bin .../block}/blank.png | Bin .../block}/bollard_black.png | Bin .../block}/bollard_black_ringed.png | Bin .../block}/bollard_ringed.png | Bin .../block}/bollard_small_portable.png | Bin .../block}/bollard_small_portable_yellow.png | Bin .../block}/bollard_smooth_metal.png | Bin .../block}/bollard_striped.png | Bin .../block}/bollard_topped.png | Bin .../block}/bollard_yellow.png | Bin .../block}/cats_eye_blue.png | Bin .../block}/cats_eye_blue_e.png | Bin .../block}/cats_eye_frame.png | Bin .../block}/cats_eye_green.png | Bin .../block}/cats_eye_green_e.png | Bin .../block}/cats_eye_red.png | Bin .../block}/cats_eye_red_e.png | Bin .../block}/cats_eye_white.png | Bin .../block}/cats_eye_white_e.png | Bin .../block}/cats_eye_yellow.png | Bin .../block}/cats_eye_yellow_e.png | Bin .../block}/crusher_vents.png | Bin .../block}/crusher_vents_electric.png | Bin .../block}/grass_inventory.png | Bin .../block}/hopper_in.png | Bin .../block}/hopper_none.png | Bin .../block}/hopper_out.png | Bin .../block}/hopper_tank.png | Bin .../block}/hopper_tank_top.png | Bin .../block}/hopper_type_item.png | Bin .../block}/hopper_type_none.png | Bin .../block}/hopper_type_red.png | Bin .../block}/hopper_type_white.png | Bin .../block}/hopper_type_yellow.png | Bin .../block}/lineBlock1_11.png | Bin .../block}/lineBlock1_12.png | Bin .../block}/lineBlock1_13.png | Bin .../block}/lineBlock1_14.png | Bin .../block}/lineBlock1_15.png | Bin .../block}/lineBlock1_16.png | Bin .../block}/machine_glass.png | Bin .../block}/machine_hazard.png | Bin .../block}/machine_metal.png | Bin .../block}/machine_metal_dark.png | Bin .../block}/machine_metal_electric.png | Bin .../block}/machine_metal_patterned.png | Bin .../machine_metal_patterned_electric.png | Bin .../block}/machine_part_dark.png | Bin .../block}/machine_part_plain.png | Bin .../block}/machine_part_plain_electric.png | Bin .../block}/machine_piping.png | Bin .../block}/machine_vent_back_off.png | Bin .../block}/machine_vent_back_on.png | Bin .../block}/machine_vent_back_on_e.png | Bin .../block}/manhole_no_rust.png | Bin .../block}/manhole_slight_rust.png | Bin .../block}/paint_filler_machine_a.png | Bin .../paint_filler_machine_a_electric.png | Bin .../block}/paint_filler_machine_b.png | Bin .../paint_filler_machine_b_electric.png | Bin .../block}/paint_filler_machine_c.png | Bin .../paint_filler_machine_c_electric.png | Bin .../block}/paint_filler_machine_display.png | Bin .../block}/paint_gun.png | Bin .../block}/paint_red.png | Bin .../block}/paint_white.png | Bin .../block}/paint_yellow.png | Bin .../block}/pneumatic_drill.png | Bin .../block}/road_factory_machine_a.png | Bin .../road_factory_machine_a_electric.png | Bin .../block}/road_factory_machine_b.png | Bin .../road_factory_machine_b_electric.png | Bin .../block}/sidewalk_kerb.png | Bin .../block}/sidewalk_kerb_red.png | Bin .../block}/sidewalk_kerb_yellow.png | Bin .../block}/sidewalk_red.png | Bin .../block}/sidewalk_white.png | Bin .../block}/sidewalk_yellow.png | Bin .../block}/street_block_12.png | Bin .../block}/street_block_13.png | Bin .../block}/street_block_17.png | Bin .../block}/street_block_a_0.png | Bin .../block}/street_block_a_1.png | Bin .../block}/street_block_a_10.png | Bin .../block}/street_block_a_11.png | Bin .../block}/street_block_a_12.png | Bin .../block}/street_block_a_13.png | Bin .../block}/street_block_a_14.png | Bin .../block}/street_block_a_15.png | Bin .../block}/street_block_a_2.png | Bin .../block}/street_block_a_3.png | Bin .../block}/street_block_a_4.png | Bin .../block}/street_block_a_5.png | Bin .../block}/street_block_a_6.png | Bin .../block}/street_block_a_7.png | Bin .../block}/street_block_a_8.png | Bin .../block}/street_block_a_9.png | Bin .../block}/street_block_b_0.png | Bin .../block}/street_block_b_1.png | Bin .../block}/street_block_b_10.png | Bin .../block}/street_block_b_11.png | Bin .../block}/street_block_b_12.png | Bin .../block}/street_block_b_13.png | Bin .../block}/street_block_b_14.png | Bin .../block}/street_block_b_15.png | Bin .../block}/street_block_b_2.png | Bin .../block}/street_block_b_3.png | Bin .../block}/street_block_b_4.png | Bin .../block}/street_block_b_5.png | Bin .../block}/street_block_b_6.png | Bin .../block}/street_block_b_7.png | Bin .../block}/street_block_b_8.png | Bin .../block}/street_block_b_9.png | Bin .../block}/street_light_bulb.png | Bin .../block}/tactile_paving.png | Bin .../block}/tar_distiller_machine_a.png | Bin .../tar_distiller_machine_a_electric.png | Bin .../block}/tar_distiller_machine_b.png | Bin .../tar_distiller_machine_b_electric.png | Bin .../block}/tarmac_cutter_blade_diamond.png | Bin .../block}/tarmac_cutter_blade_gold.png | Bin .../block}/tarmac_cutter_blade_iron.png | Bin .../block}/traffic_bollard_left.png | Bin .../block}/traffic_bollard_left_2.png | Bin .../block}/traffic_bollard_right.png | Bin .../block}/traffic_bollard_right_2.png | Bin .../{textures => textures_archive}/edit.ahk | 0 .../fluids/red_paint_flowing.png | Bin .../fluids/red_paint_flowing.png.mcmeta | 0 .../fluids/red_paint_particle.png | Bin .../fluids/red_paint_still.png | Bin .../fluids/red_paint_still.png.mcmeta | 0 .../fluids/tar_flowing.png | Bin .../fluids/tar_flowing.png.mcmeta | 0 .../fluids/tar_particle.png | Bin .../fluids/tar_still.png | Bin .../fluids/tar_still.png.mcmeta | 0 .../fluids/white_paint_flowing.png | Bin .../fluids/white_paint_flowing.png.mcmeta | 0 .../fluids/white_paint_particle.png | Bin .../fluids/white_paint_still.png | Bin .../fluids/white_paint_still.png.mcmeta | 0 .../fluids/yellow_paint_flowing.png | Bin .../fluids/yellow_paint_flowing.png.mcmeta | 0 .../fluids/yellow_paint_particle.png | Bin .../fluids/yellow_paint_still.png | Bin .../fluids/yellow_paint_still.png.mcmeta | 0 .../gui/buttons/1.png | Bin .../gui/buttons/1_hovered.png | Bin .../gui/buttons/2.png | Bin .../gui/buttons/2_hovered.png | Bin .../gui/buttons/3.png | Bin .../gui/buttons/3_hovered.png | Bin .../gui/buttons/4.png | Bin .../gui/buttons/4_hovered.png | Bin .../gui/buttons/5.png | Bin .../gui/buttons/5_hovered.png | Bin .../gui/buttons/empty.png | Bin .../gui/buttons/empty_hovered.png | Bin .../gui/buttons/template.png | Bin .../gui/category_list.png | Bin .../gui/compactor.png | Bin .../gui/crusher.png | Bin .../gui/fabricator.png | Bin .../gui/fabricator_list.png | Bin .../gui/jei_texture_1.png | Bin .../gui/jei_texture_2.png | Bin .../gui/jei_texture_3.png | Bin .../gui/paint_filler.png | Bin .../gui/paint_gun_background.png | Bin .../gui/paint_gun_background_2.png | Bin .../gui/paint_list.png | Bin .../gui/paint_oven.png | Bin .../gui/road_factory.png | Bin .../gui/tar_distiller.png | Bin .../gui/tarmac_cutter.png | Bin .../item}/cement_dust.png | Bin .../item}/clinker_mix.png | Bin .../item}/coal_coke.png | Bin .../item}/diamond_nugget.png | Bin .../item}/limestone_dust.png | Bin .../item}/paint_blue.png | Bin .../item}/paint_filler_glass.png | Bin .../item}/paint_gun.png | Bin .../item}/paint_gun_barrel.png | Bin .../item}/paint_gun_display.png | Bin .../item}/paint_gun_display/hatch_box_red.png | Bin .../paint_gun_display/hatch_box_white.png | Bin .../paint_gun_display/hatch_box_yellow.png | Bin .../line_red_crossing_diagonal.png | Bin .../paint_gun_display/line_red_far_side.png | Bin .../line_red_far_side_thick.png | Bin .../line_red_filter_lane.png | Bin .../line_red_middle_dash_double.png | Bin .../line_red_middle_half_double.png | Bin .../line_red_middle_short.png | Bin .../line_red_side_double.png | Bin .../line_red_side_double_thick.png | Bin .../paint_gun_display/line_red_side_short.png | Bin .../line_red_side_single.png | Bin .../line_red_side_single_thick.png | Bin .../line_red_straight_double.png | Bin .../line_red_straight_double_2.png | Bin .../line_red_straight_double_thick.png | Bin .../line_red_straight_double_thick_2.png | Bin .../line_red_straight_full.png | Bin .../line_red_straight_full_2.png | Bin .../line_red_straight_thick.png | Bin .../line_red_straight_thick_2.png | Bin .../line_red_thin_crossing.png | Bin .../line_white_crossing_diagonal.png | Bin .../paint_gun_display/line_white_far_side.png | Bin .../line_white_far_side_thick.png | Bin .../line_white_filter_lane.png | Bin .../line_white_middle_dash_double.png | Bin .../line_white_middle_half_double.png | Bin .../line_white_middle_short.png | Bin .../line_white_side_double.png | Bin .../line_white_side_double_thick.png | Bin .../line_white_side_short.png | Bin .../line_white_side_single.png | Bin .../line_white_side_single_thick.png | Bin .../line_white_straight_double.png | Bin .../line_white_straight_double_2.png | Bin .../line_white_straight_double_thick.png | Bin .../line_white_straight_double_thick_2.png | Bin .../line_white_straight_full.png | Bin .../line_white_straight_full_2.png | Bin .../line_white_straight_thick.png | Bin .../line_white_straight_thick_2.png | Bin .../line_white_thin_crossing.png | Bin .../line_yellow_crossing_diagonal.png | Bin .../line_yellow_far_side.png | Bin .../line_yellow_far_side_thick.png | Bin .../line_yellow_filter_lane.png | Bin .../line_yellow_middle_dash_double.png | Bin .../line_yellow_middle_half_double.png | Bin .../line_yellow_middle_short.png | Bin .../line_yellow_side_double.png | Bin .../line_yellow_side_double_thick.png | Bin .../line_yellow_side_short.png | Bin .../line_yellow_side_single.png | Bin .../line_yellow_side_single_thick.png | Bin .../line_yellow_straight_double.png | Bin .../line_yellow_straight_double_2.png | Bin .../line_yellow_straight_double_thick.png | Bin .../line_yellow_straight_double_thick_2.png | Bin .../line_yellow_straight_full.png | Bin .../line_yellow_straight_full_2.png | Bin .../line_yellow_straight_thick.png | Bin .../line_yellow_straight_thick_2.png | Bin .../line_yellow_thin_crossing.png | Bin .../paint_gun_display/paint_letter_red_01.png | Bin .../paint_letter_red_01_8.png | Bin .../paint_gun_display/paint_letter_red_23.png | Bin .../paint_letter_red_23_8.png | Bin .../paint_gun_display/paint_letter_red_45.png | Bin .../paint_letter_red_45_8.png | Bin .../paint_gun_display/paint_letter_red_67.png | Bin .../paint_letter_red_67_8.png | Bin .../paint_gun_display/paint_letter_red_89.png | Bin .../paint_letter_red_89_8.png | Bin .../paint_gun_display/paint_letter_red_ab.png | Bin .../paint_letter_red_ab_8.png | Bin .../paint_gun_display/paint_letter_red_cd.png | Bin .../paint_letter_red_cd_8.png | Bin .../paint_gun_display/paint_letter_red_ef.png | Bin .../paint_letter_red_ef_8.png | Bin .../paint_gun_display/paint_letter_red_gh.png | Bin .../paint_letter_red_gh_8.png | Bin .../paint_gun_display/paint_letter_red_ij.png | Bin .../paint_letter_red_ij_8.png | Bin .../paint_gun_display/paint_letter_red_kl.png | Bin .../paint_letter_red_kl_8.png | Bin .../paint_gun_display/paint_letter_red_mn.png | Bin .../paint_letter_red_mn_8.png | Bin .../paint_gun_display/paint_letter_red_op.png | Bin .../paint_letter_red_op_8.png | Bin .../paint_letter_red_punct_hash_slash.png | Bin .../paint_letter_red_punct_hash_slash_8.png | Bin ..._letter_red_punct_question_exclamation.png | Bin ...etter_red_punct_question_exclamation_8.png | Bin .../paint_gun_display/paint_letter_red_qr.png | Bin .../paint_letter_red_qr_8.png | Bin .../paint_gun_display/paint_letter_red_st.png | Bin .../paint_letter_red_st_8.png | Bin .../paint_gun_display/paint_letter_red_uv.png | Bin .../paint_letter_red_uv_8.png | Bin .../paint_gun_display/paint_letter_red_wx.png | Bin .../paint_letter_red_wx_8.png | Bin .../paint_gun_display/paint_letter_red_yz.png | Bin .../paint_letter_red_yz_8.png | Bin .../paint_letter_white_01.png | Bin .../paint_letter_white_01_8.png | Bin .../paint_letter_white_23.png | Bin .../paint_letter_white_23_8.png | Bin .../paint_letter_white_45.png | Bin .../paint_letter_white_45_8.png | Bin .../paint_letter_white_67.png | Bin .../paint_letter_white_67_8.png | Bin .../paint_letter_white_89.png | Bin .../paint_letter_white_89_8.png | Bin .../paint_letter_white_ab.png | Bin .../paint_letter_white_ab_8.png | Bin .../paint_letter_white_cd.png | Bin .../paint_letter_white_cd_8.png | Bin .../paint_letter_white_ef.png | Bin .../paint_letter_white_ef_8.png | Bin .../paint_letter_white_gh.png | Bin .../paint_letter_white_gh_8.png | Bin .../paint_letter_white_ij.png | Bin .../paint_letter_white_ij_8.png | Bin .../paint_letter_white_kl.png | Bin .../paint_letter_white_kl_8.png | Bin .../paint_letter_white_mn.png | Bin .../paint_letter_white_mn_8.png | Bin .../paint_letter_white_op.png | Bin .../paint_letter_white_op_8.png | Bin .../paint_letter_white_punct_hash_slash.png | Bin .../paint_letter_white_punct_hash_slash_8.png | Bin ...etter_white_punct_question_exclamation.png | Bin ...ter_white_punct_question_exclamation_8.png | Bin .../paint_letter_white_qr.png | Bin .../paint_letter_white_qr_8.png | Bin .../paint_letter_white_st.png | Bin .../paint_letter_white_st_8.png | Bin .../paint_letter_white_uv.png | Bin .../paint_letter_white_uv_8.png | Bin .../paint_letter_white_wx.png | Bin .../paint_letter_white_wx_8.png | Bin .../paint_letter_white_yz.png | Bin .../paint_letter_white_yz_8.png | Bin .../paint_letter_yellow_01.png | Bin .../paint_letter_yellow_01_8.png | Bin .../paint_letter_yellow_23.png | Bin .../paint_letter_yellow_23_8.png | Bin .../paint_letter_yellow_45.png | Bin .../paint_letter_yellow_45_8.png | Bin .../paint_letter_yellow_67.png | Bin .../paint_letter_yellow_67_8.png | Bin .../paint_letter_yellow_89.png | Bin .../paint_letter_yellow_89_8.png | Bin .../paint_letter_yellow_ab.png | Bin .../paint_letter_yellow_ab_8.png | Bin .../paint_letter_yellow_cd.png | Bin .../paint_letter_yellow_cd_8.png | Bin .../paint_letter_yellow_ef.png | Bin .../paint_letter_yellow_ef_8.png | Bin .../paint_letter_yellow_gh.png | Bin .../paint_letter_yellow_gh_8.png | Bin .../paint_letter_yellow_ij.png | Bin .../paint_letter_yellow_ij_8.png | Bin .../paint_letter_yellow_kl.png | Bin .../paint_letter_yellow_kl_8.png | Bin .../paint_letter_yellow_mn.png | Bin .../paint_letter_yellow_mn_8.png | Bin .../paint_letter_yellow_op.png | Bin .../paint_letter_yellow_op_8.png | Bin .../paint_letter_yellow_punct_hash_slash.png | Bin ...paint_letter_yellow_punct_hash_slash_8.png | Bin ...tter_yellow_punct_question_exclamation.png | Bin ...er_yellow_punct_question_exclamation_8.png | Bin .../paint_letter_yellow_qr.png | Bin .../paint_letter_yellow_qr_8.png | Bin .../paint_letter_yellow_st.png | Bin .../paint_letter_yellow_st_8.png | Bin .../paint_letter_yellow_uv.png | Bin .../paint_letter_yellow_uv_8.png | Bin .../paint_letter_yellow_wx.png | Bin .../paint_letter_yellow_wx_8.png | Bin .../paint_letter_yellow_yz.png | Bin .../paint_letter_yellow_yz_8.png | Bin .../item}/paint_gun_display/red_arrow.png | Bin .../item}/paint_gun_display/red_arrow_4.png | Bin .../paint_gun_display/red_arrow_diagonal.png | Bin .../red_arrow_diagonal_4.png | Bin .../paint_gun_display/red_arrow_line.png | Bin .../item}/paint_gun_display/red_bike.png | Bin .../item}/paint_gun_display/red_bike_icon.png | Bin .../item}/paint_gun_display/red_bus.png | Bin .../item}/paint_gun_display/red_chevron.png | Bin .../paint_gun_display/red_chevron_left_a.png | Bin .../red_chevron_left_a_thin.png | Bin .../paint_gun_display/red_chevron_mid.png | Bin .../paint_gun_display/red_chevron_mid_8.png | Bin .../red_chevron_mid_left.png | Bin .../red_chevron_mid_left_8.png | Bin .../red_chevron_mid_right.png | Bin .../red_chevron_mid_right_8.png | Bin .../paint_gun_display/red_chevron_right_a.png | Bin .../red_chevron_right_a_thin.png | Bin .../red_chevron_side_line.png | Bin .../item}/paint_gun_display/red_city.png | Bin .../item}/paint_gun_display/red_clear.png | Bin .../paint_gun_display/red_crossing_paint.png | Bin .../item}/paint_gun_display/red_ctre.png | Bin .../item}/paint_gun_display/red_entry.png | Bin .../item}/paint_gun_display/red_give_way.png | Bin .../paint_gun_display/red_junction_a.png | Bin .../paint_gun_display/red_junction_a_4.png | Bin .../paint_gun_display/red_junction_a_8.png | Bin .../paint_gun_display/red_junction_b.png | Bin .../paint_gun_display/red_junction_b_4.png | Bin .../paint_gun_display/red_junction_b_8.png | Bin .../red_junction_filter_left.png | Bin .../red_junction_filter_left_empty.png | Bin .../red_junction_filter_left_thin.png | Bin .../red_junction_filter_right.png | Bin .../red_junction_filter_right_empty.png | Bin .../red_junction_filter_right_thin.png | Bin .../red_junction_fork_chevron_mid.png | Bin .../red_junction_fork_chevron_mid_thin.png | Bin .../red_junction_fork_mid.png | Bin .../red_junction_fork_mid_thin.png | Bin .../red_junction_mid_line_connection.png | Bin .../red_junction_mid_line_connection_12.png | Bin .../red_junction_mid_line_connection_4.png | Bin .../red_junction_mid_line_connection_8.png | Bin .../red_junction_side_line_connection.png | Bin .../red_junction_side_line_connection_12.png | Bin .../red_junction_side_line_connection_4.png | Bin .../red_junction_side_line_connection_8.png | Bin ...ction_side_line_connection_thick_thick.png | Bin ...on_side_line_connection_thick_thick_12.png | Bin ...ion_side_line_connection_thick_thick_4.png | Bin ...ion_side_line_connection_thick_thick_8.png | Bin ...red_junction_side_line_connection_thin.png | Bin ..._junction_side_line_connection_thin_12.png | Bin ...d_junction_side_line_connection_thin_4.png | Bin ...d_junction_side_line_connection_thin_8.png | Bin .../item}/paint_gun_display/red_keep.png | Bin .../item}/paint_gun_display/red_lane.png | Bin .../item}/paint_gun_display/red_left.png | Bin .../paint_gun_display/red_merge_arrow.png | Bin .../item}/paint_gun_display/red_no.png | Bin .../item}/paint_gun_display/red_only.png | Bin .../paint_gun_display/red_pedestrian.png | Bin .../item}/paint_gun_display/red_right.png | Bin .../item}/paint_gun_display/red_slow.png | Bin .../item}/paint_gun_display/red_stop.png | Bin .../item}/paint_gun_display/red_taxi.png | Bin .../item}/paint_gun_display/red_town.png | Bin .../item}/paint_gun_display/red_turn.png | Bin .../paint_gun_display/red_wheelchair_icon.png | Bin .../item}/paint_gun_display/white_arrow.png | Bin .../item}/paint_gun_display/white_arrow_4.png | Bin .../white_arrow_diagonal.png | Bin .../white_arrow_diagonal_4.png | Bin .../paint_gun_display/white_arrow_line.png | Bin .../item}/paint_gun_display/white_bike.png | Bin .../paint_gun_display/white_bike_icon.png | Bin .../item}/paint_gun_display/white_bus.png | Bin .../item}/paint_gun_display/white_chevron.png | Bin .../white_chevron_left_a.png | Bin .../white_chevron_left_a_thin.png | Bin .../paint_gun_display/white_chevron_mid.png | Bin .../paint_gun_display/white_chevron_mid_8.png | Bin .../white_chevron_mid_left.png | Bin .../white_chevron_mid_left_8.png | Bin .../white_chevron_mid_right.png | Bin .../white_chevron_mid_right_8.png | Bin .../white_chevron_right_a.png | Bin .../white_chevron_right_a_thin.png | Bin .../white_chevron_side_line.png | Bin .../item}/paint_gun_display/white_city.png | Bin .../item}/paint_gun_display/white_clear.png | Bin .../white_crossing_paint.png | Bin .../item}/paint_gun_display/white_ctre.png | Bin .../item}/paint_gun_display/white_entry.png | Bin .../paint_gun_display/white_give_way.png | Bin .../paint_gun_display/white_junction_a.png | Bin .../paint_gun_display/white_junction_a_4.png | Bin .../paint_gun_display/white_junction_a_8.png | Bin .../paint_gun_display/white_junction_b.png | Bin .../paint_gun_display/white_junction_b_4.png | Bin .../paint_gun_display/white_junction_b_8.png | Bin .../white_junction_filter_left.png | Bin .../white_junction_filter_left_empty.png | Bin .../white_junction_filter_left_thin.png | Bin .../white_junction_filter_right.png | Bin .../white_junction_filter_right_empty.png | Bin .../white_junction_filter_right_thin.png | Bin .../white_junction_fork_chevron_mid.png | Bin .../white_junction_fork_chevron_mid_thin.png | Bin .../white_junction_fork_mid.png | Bin .../white_junction_fork_mid_thin.png | Bin .../white_junction_mid_line_connection.png | Bin .../white_junction_mid_line_connection_12.png | Bin .../white_junction_mid_line_connection_4.png | Bin .../white_junction_mid_line_connection_8.png | Bin .../white_junction_side_line_connection.png | Bin ...white_junction_side_line_connection_12.png | Bin .../white_junction_side_line_connection_4.png | Bin .../white_junction_side_line_connection_8.png | Bin ...ction_side_line_connection_thick_thick.png | Bin ...on_side_line_connection_thick_thick_12.png | Bin ...ion_side_line_connection_thick_thick_4.png | Bin ...ion_side_line_connection_thick_thick_8.png | Bin ...ite_junction_side_line_connection_thin.png | Bin ..._junction_side_line_connection_thin_12.png | Bin ...e_junction_side_line_connection_thin_4.png | Bin ...e_junction_side_line_connection_thin_8.png | Bin .../item}/paint_gun_display/white_keep.png | Bin .../item}/paint_gun_display/white_lane.png | Bin .../item}/paint_gun_display/white_left.png | Bin .../paint_gun_display/white_merge_arrow.png | Bin .../item}/paint_gun_display/white_no.png | Bin .../item}/paint_gun_display/white_only.png | Bin .../paint_gun_display/white_pedestrian.png | Bin .../item}/paint_gun_display/white_right.png | Bin .../item}/paint_gun_display/white_slow.png | Bin .../item}/paint_gun_display/white_stop.png | Bin .../item}/paint_gun_display/white_taxi.png | Bin .../item}/paint_gun_display/white_town.png | Bin .../item}/paint_gun_display/white_turn.png | Bin .../white_wheelchair_icon.png | Bin .../item}/paint_gun_display/yellow_arrow.png | Bin .../paint_gun_display/yellow_arrow_4.png | Bin .../yellow_arrow_diagonal.png | Bin .../yellow_arrow_diagonal_4.png | Bin .../paint_gun_display/yellow_arrow_line.png | Bin .../item}/paint_gun_display/yellow_bike.png | Bin .../paint_gun_display/yellow_bike_icon.png | Bin .../item}/paint_gun_display/yellow_bus.png | Bin .../paint_gun_display/yellow_chevron.png | Bin .../yellow_chevron_left_a.png | Bin .../yellow_chevron_left_a_thin.png | Bin .../paint_gun_display/yellow_chevron_mid.png | Bin .../yellow_chevron_mid_8.png | Bin .../yellow_chevron_mid_left.png | Bin .../yellow_chevron_mid_left_8.png | Bin .../yellow_chevron_mid_right.png | Bin .../yellow_chevron_mid_right_8.png | Bin .../yellow_chevron_right_a.png | Bin .../yellow_chevron_right_a_thin.png | Bin .../yellow_chevron_side_line.png | Bin .../item}/paint_gun_display/yellow_city.png | Bin .../item}/paint_gun_display/yellow_clear.png | Bin .../yellow_crossing_paint.png | Bin .../item}/paint_gun_display/yellow_ctre.png | Bin .../item}/paint_gun_display/yellow_entry.png | Bin .../paint_gun_display/yellow_give_way.png | Bin .../paint_gun_display/yellow_junction_a.png | Bin .../paint_gun_display/yellow_junction_a_4.png | Bin .../paint_gun_display/yellow_junction_a_8.png | Bin .../paint_gun_display/yellow_junction_b.png | Bin .../paint_gun_display/yellow_junction_b_4.png | Bin .../paint_gun_display/yellow_junction_b_8.png | Bin .../yellow_junction_filter_left.png | Bin .../yellow_junction_filter_left_empty.png | Bin .../yellow_junction_filter_left_thin.png | Bin .../yellow_junction_filter_right.png | Bin .../yellow_junction_filter_right_empty.png | Bin .../yellow_junction_filter_right_thin.png | Bin .../yellow_junction_fork_chevron_mid.png | Bin .../yellow_junction_fork_chevron_mid_thin.png | Bin .../yellow_junction_fork_mid.png | Bin .../yellow_junction_fork_mid_thin.png | Bin .../yellow_junction_mid_line_connection.png | Bin ...yellow_junction_mid_line_connection_12.png | Bin .../yellow_junction_mid_line_connection_4.png | Bin .../yellow_junction_mid_line_connection_8.png | Bin .../yellow_junction_side_line_connection.png | Bin ...ellow_junction_side_line_connection_12.png | Bin ...yellow_junction_side_line_connection_4.png | Bin ...yellow_junction_side_line_connection_8.png | Bin ...ction_side_line_connection_thick_thick.png | Bin ...on_side_line_connection_thick_thick_12.png | Bin ...ion_side_line_connection_thick_thick_4.png | Bin ...ion_side_line_connection_thick_thick_8.png | Bin ...low_junction_side_line_connection_thin.png | Bin ..._junction_side_line_connection_thin_12.png | Bin ...w_junction_side_line_connection_thin_4.png | Bin ...w_junction_side_line_connection_thin_8.png | Bin .../item}/paint_gun_display/yellow_keep.png | Bin .../item}/paint_gun_display/yellow_lane.png | Bin .../item}/paint_gun_display/yellow_left.png | Bin .../paint_gun_display/yellow_merge_arrow.png | Bin .../item}/paint_gun_display/yellow_no.png | Bin .../item}/paint_gun_display/yellow_only.png | Bin .../paint_gun_display/yellow_pedestrian.png | Bin .../item}/paint_gun_display/yellow_right.png | Bin .../item}/paint_gun_display/yellow_slow.png | Bin .../item}/paint_gun_display/yellow_stop.png | Bin .../item}/paint_gun_display/yellow_taxi.png | Bin .../item}/paint_gun_display/yellow_town.png | Bin .../item}/paint_gun_display/yellow_turn.png | Bin .../yellow_wheelchair_icon.png | Bin .../line_red_crossing_diagonal.png | Bin .../line_white_crossing_diagonal.png | Bin .../line_yellow_crossing_diagonal.png | Bin .../item}/paint_icons/red_arrow_4.png | Bin .../item}/paint_icons/red_arrow_diagonal.png | Bin .../paint_icons/red_arrow_diagonal_4.png | Bin .../item}/paint_icons/red_crossing_paint.png | Bin .../item}/paint_icons/red_give_way.png | Bin .../paint_icons/red_junction_filter_left.png | Bin .../red_junction_filter_left_empty.png | Bin .../red_junction_filter_left_thin.png | Bin .../paint_icons/red_junction_filter_right.png | Bin .../red_junction_filter_right_empty.png | Bin .../red_junction_filter_right_thin.png | Bin .../red_junction_fork_chevron_mid.png | Bin .../red_junction_fork_chevron_mid_thin.png | Bin .../paint_icons/red_junction_fork_mid.png | Bin .../red_junction_fork_mid_thin.png | Bin .../item}/paint_icons/red_merge_arrow.png | Bin .../item}/paint_icons/red_pedestrian.png | Bin .../item}/paint_icons/white_arrow_4.png | Bin .../paint_icons/white_arrow_diagonal.png | Bin .../paint_icons/white_arrow_diagonal_4.png | Bin .../paint_icons/white_crossing_paint.png | Bin .../item}/paint_icons/white_give_way.png | Bin .../white_junction_filter_left.png | Bin .../white_junction_filter_left_empty.png | Bin .../white_junction_filter_left_thin.png | Bin .../white_junction_filter_right.png | Bin .../white_junction_filter_right_empty.png | Bin .../white_junction_filter_right_thin.png | Bin .../white_junction_fork_chevron_mid.png | Bin .../white_junction_fork_chevron_mid_thin.png | Bin .../paint_icons/white_junction_fork_mid.png | Bin .../white_junction_fork_mid_thin.png | Bin .../item}/paint_icons/white_merge_arrow.png | Bin .../item}/paint_icons/white_pedestrian.png | Bin .../item}/paint_icons/yellow_arrow_4.png | Bin .../paint_icons/yellow_arrow_diagonal.png | Bin .../paint_icons/yellow_arrow_diagonal_4.png | Bin .../paint_icons/yellow_crossing_paint.png | Bin .../item}/paint_icons/yellow_give_way.png | Bin .../yellow_junction_filter_left.png | Bin .../yellow_junction_filter_left_empty.png | Bin .../yellow_junction_filter_left_thin.png | Bin .../yellow_junction_filter_right.png | Bin .../yellow_junction_filter_right_empty.png | Bin .../yellow_junction_filter_right_thin.png | Bin .../yellow_junction_fork_chevron_mid.png | Bin .../yellow_junction_fork_chevron_mid_thin.png | Bin .../paint_icons/yellow_junction_fork_mid.png | Bin .../yellow_junction_fork_mid_thin.png | Bin .../item}/paint_icons/yellow_merge_arrow.png | Bin .../item}/paint_icons/yellow_pedestrian.png | Bin .../item}/paint_red.png | Bin .../item}/paint_scraper.png | Bin .../item}/paint_white.png | Bin .../item}/paint_yellow.png | Bin .../item}/pneumatic_drill.png | Bin .../item}/sidewalk_fragment_clean.png | Bin .../item}/sidewalk_fragment_dark.png | Bin .../item}/sidewalk_fragment_standard.png | Bin .../item}/sidewalk_fragment_tan.png | Bin .../item}/street_light_bulb.png | Bin .../item}/tarmac_cutter_blade.png | Bin .../item}/tarmac_cutter_blade_diamond.png | Bin .../item}/tarmac_cutter_blade_gold.png | Bin .../item}/tarmac_cutter_blade_iron.png | Bin .../item}/tarmac_cutter_machine.png | Bin .../item}/tarmac_cutter_metal.png | Bin .../item}/tarmac_cutter_tyre.png | Bin .../item}/tarmac_fragment_blue.png | Bin .../item}/tarmac_fragment_concrete_1.png | Bin .../item}/tarmac_fragment_concrete_2.png | Bin .../item}/tarmac_fragment_dark.png | Bin .../item}/tarmac_fragment_dirt.png | Bin .../item}/tarmac_fragment_fine.png | Bin .../item}/tarmac_fragment_grass.png | Bin .../item}/tarmac_fragment_gravel.png | Bin .../item}/tarmac_fragment_green.png | Bin .../item}/tarmac_fragment_light.png | Bin .../item}/tarmac_fragment_muddy.png | Bin .../item}/tarmac_fragment_pale.png | Bin .../item}/tarmac_fragment_red.png | Bin .../item}/tarmac_fragment_sand.png | Bin .../item}/tarmac_fragment_standard.png | Bin .../item}/tarmac_fragment_stone.png | Bin .../item}/tarmac_fragment_white.png | Bin .../item}/tarmac_fragment_yellow.png | Bin .../item}/tool_handle.png | Bin .../item}/wrench.png | Bin .../paints/arrow_0.png | Bin .../paints/arrow_4.png | Bin .../paints/arrow_diagonal_0.png} | Bin .../paints/arrow_diagonal_4.png} | Bin .../paints/arrow_line_0.png | Bin .../paints/bike_0.png | Bin .../paints/bike_4.png | Bin .../paints/bike_icon_0.png | Bin .../paints/bike_icon_4.png | Bin .../paints/bus_0.png | Bin .../paints/bus_4.png | Bin .../paints/chevron_0.png | Bin .../paints/chevron_left_a_0.png | Bin .../paints/chevron_left_a_thin_0.png | Bin .../paints/chevron_mid_0.png | Bin .../paints/chevron_mid_8.png | Bin .../paints/chevron_mid_left_0.png | Bin .../paints/chevron_mid_left_8.png | Bin .../paints/chevron_mid_right_0.png | Bin .../paints/chevron_mid_right_8.png | Bin .../paints/chevron_right_a_0.png | Bin .../paints/chevron_right_a_thin_0.png | Bin .../paints/chevron_side_line_0.png | Bin .../paints/city_0.png | Bin .../paints/city_4.png | Bin .../paints/clear_0.png | Bin .../paints/clear_4.png | Bin .../paints/crossing_paint_0.png | Bin .../paints/ctre_0.png | Bin .../paints/ctre_4.png | Bin .../paints/entry_0.png | Bin .../paints/entry_4.png | Bin .../paints/give_way_0.png | Bin .../paints/hatch_box_0.png | Bin .../paints/junction_a_0.png | Bin .../paints/junction_a_4.png | Bin .../paints/junction_a_8.png | Bin .../paints/junction_b_0.png | Bin .../paints/junction_b_4.png | Bin .../paints/junction_b_8.png | Bin .../paints/junction_filter_left_0.png | Bin .../paints/junction_filter_left_empty_0.png | Bin .../paints/junction_filter_left_thin_0.png | Bin .../paints/junction_filter_right_0.png | Bin .../paints/junction_filter_right_empty_0.png | Bin .../paints/junction_filter_right_thin_0.png | Bin .../paints/junction_fork_chevron_mid_0.png | Bin .../junction_fork_chevron_mid_thin_0.png | Bin .../paints/junction_fork_mid_0.png | Bin .../paints/junction_fork_mid_thin_0.png | Bin .../paints/junction_mid_line_connection_0.png | Bin .../junction_mid_line_connection_12.png | Bin .../paints/junction_mid_line_connection_4.png | Bin .../paints/junction_mid_line_connection_8.png | Bin .../junction_side_line_connection_0.png | Bin .../junction_side_line_connection_12.png | Bin .../junction_side_line_connection_4.png | Bin .../junction_side_line_connection_8.png | Bin ...ion_side_line_connection_thick_thick_0.png | Bin ...on_side_line_connection_thick_thick_12.png | Bin ...ion_side_line_connection_thick_thick_4.png | Bin ...ion_side_line_connection_thick_thick_8.png | Bin .../junction_side_line_connection_thin_0.png | Bin .../junction_side_line_connection_thin_12.png | Bin .../junction_side_line_connection_thin_4.png | Bin .../junction_side_line_connection_thin_8.png | Bin .../paints/keep_0.png | Bin .../paints/keep_4.png | Bin .../paints/lane_0.png | Bin .../paints/lane_4.png | Bin .../paints/left_0.png | Bin .../paints/left_4.png | Bin .../paints/line_crossing_diagonal_0.png | Bin .../paints/line_far_side_0.png | Bin .../paints/line_far_side_6.png | Bin .../paints/line_far_side_thick_0.png | Bin .../paints/line_far_side_thick_6.png | Bin .../paints/line_filter_lane_0.png | Bin .../paints/line_middle_dash_double_0.png | Bin .../paints/line_middle_half_double.png | Bin .../paints/line_middle_half_double_0.png | Bin .../paints/line_middle_short_0.png | Bin .../paints/line_side_double_0.png | Bin .../paints/line_side_double_6.png | Bin .../paints/line_side_double_thick_0.png | Bin .../paints/line_side_double_thick_6.png | Bin .../paints/line_side_short_0.png | Bin .../paints/line_side_single_0.png | Bin .../paints/line_side_single_6.png | Bin .../paints/line_side_single_thick_0.png | Bin .../paints/line_side_single_thick_6.png | Bin .../paints/line_straight_double_0.png | Bin .../paints/line_straight_double_2.png | Bin .../paints/line_straight_double_thick_0.png | Bin .../paints/line_straight_double_thick_2.png | Bin .../paints/line_straight_full_0.png | Bin .../paints/line_straight_full_2.png | Bin .../paints/line_straight_thick_0.png | Bin .../paints/line_straight_thick_2.png | Bin .../paints/line_thin_crossing_0.png | Bin .../paints/merge_arrow_0.png | Bin .../paints/no_0.png | Bin .../paints/no_4.png | Bin .../paints/only_0.png | Bin .../paints/only_4.png | Bin .../paints/paint_letter_01_0.png | Bin .../paints/paint_letter_01_8.png | Bin .../paints/paint_letter_23_0.png | Bin .../paints/paint_letter_23_8.png | Bin .../paints/paint_letter_45_0.png | Bin .../paints/paint_letter_45_8.png | Bin .../paints/paint_letter_67_0.png | Bin .../paints/paint_letter_67_8.png | Bin .../paints/paint_letter_89_0.png | Bin .../paints/paint_letter_89_8.png | Bin .../paints/paint_letter_ab_0.png | Bin .../paints/paint_letter_ab_8.png | Bin .../paints/paint_letter_cd_0.png | Bin .../paints/paint_letter_cd_8.png | Bin .../paints/paint_letter_ef_0.png | Bin .../paints/paint_letter_ef_8.png | Bin .../paints/paint_letter_gh_0.png | Bin .../paints/paint_letter_gh_8.png | Bin .../paints/paint_letter_ij_0.png | Bin .../paints/paint_letter_ij_8.png | Bin .../paints/paint_letter_kl_0.png | Bin .../paints/paint_letter_kl_8.png | Bin .../paints/paint_letter_mn_0.png | Bin .../paints/paint_letter_mn_8.png | Bin .../paints/paint_letter_op_0.png | Bin .../paints/paint_letter_op_8.png | Bin .../paint_letter_punct_hash_slash_0.png | Bin .../paint_letter_punct_hash_slash_8.png | Bin ...nt_letter_punct_question_exclamation_0.png | Bin ...nt_letter_punct_question_exclamation_8.png | Bin .../paints/paint_letter_qr_0.png | Bin .../paints/paint_letter_qr_8.png | Bin .../paints/paint_letter_st_0.png | Bin .../paints/paint_letter_st_8.png | Bin .../paints/paint_letter_uv_0.png | Bin .../paints/paint_letter_uv_8.png | Bin .../paints/paint_letter_wx_0.png | Bin .../paints/paint_letter_wx_8.png | Bin .../paints/paint_letter_yz_0.png | Bin .../paints/paint_letter_yz_8.png | Bin .../paints/pedestrian_0.png | Bin .../paints/right_0.png | Bin .../paints/right_4.png | Bin .../paints/slow_0.png | Bin .../paints/slow_4.png | Bin .../paints/stop_0.png | Bin .../paints/stop_4.png | Bin .../paints/taxi_0.png | Bin .../paints/taxi_4.png | Bin .../paints/town_0.png | Bin .../paints/town_4.png | Bin .../paints/turn_0.png | Bin .../paints/turn_4.png | Bin .../paints/wheelchair_icon_0.png | Bin .../roadBlockDirt0.png | Bin .../roadBlockDirt12.png | Bin .../roadBlockDirt4.png | Bin .../roadBlockDirt8.png | Bin .../roadBlockDirtCorner0.png | Bin .../roadBlockDirtCorner12.png | Bin .../roadBlockDirtCorner4.png | Bin .../roadBlockDirtCorner8.png | Bin src/main/resources/mcmod.info | 16 - src/main/resources/pack.mcmeta | 10 +- 3353 files changed, 7165 insertions(+), 120765 deletions(-) create mode 100644 .gitattributes create mode 100644 .github/workflows/build.yml create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/cement.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/clinker.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/crushed_rock.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/dirt_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/grass_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/gravel_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/limestone.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_green_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_light_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_red_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_white_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sand_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_9.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/blockstates/stone_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/cement.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/clinker.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/crushed_rock.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/dirt_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/grass_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/gravel_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/limestone.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_blue_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_dark_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_fine_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_green_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_light_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_pale_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_red_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_standard_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_white_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sand_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/block/stone_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/cement.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/clinker.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/crushed_rock.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/dirt_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/grass_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/gravel_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/limestone.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_blue_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_dark_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_fine_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_green_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_light_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_pale_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_red_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_standard_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_white_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sand_road_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_9.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_1.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_10.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_11.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_12.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_13.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_14.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_15.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_16.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_2.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_3.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_4.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_5.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_6.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_7.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_8.json create mode 100644 src/generated/resources/assets/furenikusroads/models/item/stone_road_9.json create mode 100644 src/main/java/com/fureniku/roads/FurenikusRoads.java create mode 100644 src/main/java/com/fureniku/roads/RegistrationRoads.java create mode 100644 src/main/java/com/fureniku/roads/blocks/DecorativeBlock.java create mode 100644 src/main/java/com/fureniku/roads/blocks/RoadBlock.java create mode 100644 src/main/java/com/fureniku/roads/blocks/RoadBlockSet.java create mode 100644 src/main/java/com/fureniku/roads/datagen/DataGeneration.java create mode 100644 src/main/java/com/fureniku/roads/datagen/RoadsBlockStates.java create mode 100644 src/main/java/com/fureniku/roads/datagen/RoadsItemModelProvider.java create mode 100644 src/main/java/com/fureniku/roads/enums/EnumRoadSize.java delete mode 100644 src/main/java/com/silvaniastudios/roads/CommonProxy.java delete mode 100644 src/main/java/com/silvaniastudios/roads/FRSounds.java delete mode 100644 src/main/java/com/silvaniastudios/roads/FurenikusRoads.java delete mode 100644 src/main/java/com/silvaniastudios/roads/GuiHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/IColour.java delete mode 100644 src/main/java/com/silvaniastudios/roads/RoadsConfig.java delete mode 100644 src/main/java/com/silvaniastudios/roads/WorldGen.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/BlockBase.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/BlockFakeLight.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/BlockRoadSnow.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/FRBlocks.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/NonPaintRoadTopBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/PaintColour.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/RoadBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/StreetBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/StreetRoadBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierConcreteEdgeBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierEdgeBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierEndBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierLowEdgeBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/BarsBarrierBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/BollardBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/CatsEyeBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/CatsEyeBlockFourWay.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/ConcreteBarrierBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/CurbBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/FoldingBollardBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/FourWayRotDecorativeBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/GenericDecorativeBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/MetalPost.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/RetractableBollardBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/SpeedBumpBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/StandardBollardBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/StreetLight.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/TwoWayRotDecorativeBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/decorative/WheelStopBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/diagonal/HalfBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/diagonal/RoadBlockDiagonal.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/diagonal/ShapeLibrary.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/diagonal/UnlistedPropertyBlockPos.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/diagonal/UnlistedPropertySideBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectArrows.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectDiagonal.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectDirectional.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectDirectional_FarSide.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectJunctionChevron.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/EnumFourLengthConnectable.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/EnumMeta.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/EnumRotatable.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/EnumSimpleRotation.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/EnumThreeLengthConnectable.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/EnumTwoLengthConnectable.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/IConnectable.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/IMetaBlockName.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/enums/IPostConnectable.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/ArrowDiagonalPaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/ArrowLinePaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/ArrowPaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronMidPaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronPaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronSideLinePaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronSidePaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/CrossingPaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/JunctionFilterLinePaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/JunctionPaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/LargeTextPaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/LinePaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/PaintBlockBase.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/PaintBlockCustomRenderBase.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/SideLinePaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/SimpleLinePaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/WallPaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/customs/Custom1x2PaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/customs/Custom1x3PaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/customs/Custom1x4PaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/customs/CustomMetaPaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/customs/CustomPaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/customs/CustomPaintWallBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/customs/ICustomBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/properties/PaintGrid.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/properties/UnlistedPropertyConnection.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/uniques/ChevronIconPaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/paint/uniques/HatchBoxPaintBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/FREnergyStorage.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/InputStackHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/InteractableStackHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/OutputStackHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/RoadTEBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/RoadTileEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotBucket.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotFluid.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotFuel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotOutput.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorContainer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorElectricEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorStackHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/SlotFragment.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherContainer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherElectricEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherStackHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/SlotDistillerFuel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/SlotDistillerInput.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerContainer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerElectricEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerStackHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorContainer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorElectricEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorStackHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerContainer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerElectricEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerStackHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/SlotDye.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/SlotPaintGun.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/hopper/PaintFillerHopperBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/hopper/PaintFillerHopperEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/hopper/PaintFillerHopperStackHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenContainer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenElectricEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenStackHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/CompactorRecipes.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/CrusherRecipes.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/FabricatorRecipes.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/RecipeRegistry.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/RoadFactoryRecipes.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/TarDistillerRecipes.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/ThermalExpansionRecipes.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/ThermalFoundationRecipes.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryContainer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryElectricEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryStackHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/SlotRoadIn.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/SlotBlade.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/SlotTarmacCutter.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterContainer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterElectricEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterEntity.java delete mode 100644 src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterStackHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/BoundingBoxDraw.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/ClientProxy.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/ModBlockColours.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/ModItemColours.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/TextureRegistryHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/FabricatorRecipeList.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/GuiCompactor.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/GuiCrusher.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/GuiFabricator.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/GuiFabricatorSelector.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/GuiHiddenButton.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/GuiIconButton.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/GuiPaintFiller.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/GuiPaintOven.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/GuiRoadFactory.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/GuiScrollingList_Mod.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/GuiTarDistiller.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/GuiTarmacCutter.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/paintgun/GuiPaintGun.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/paintgun/PaintGunCategoryList.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/gui/paintgun/PaintGunPaintList.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/CatsEyeDoubleModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/CatsEyeModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/CatsEyeTwoSidedDoubleModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/CatsEyeTwoSidedModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/CrusherBakedModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/CrusherRenderer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/DiagonalRoadModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/ModelBakeHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/PaintFillerBakedModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/PaintFillerHopperRenderer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/PaintFillerRenderer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/PaintGunModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/PaintOvenRenderer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/RenderHelper.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/RoadFactoryBakedModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/RoadFactoryRenderer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/TarDistillerBakedModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/TarDistillerRenderer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/TarmacCutterBakedModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/TarmacCutterRenderer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalBakedModelBase.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalModelBase.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalQuadQuadBakedModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalQuadQuadModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleQuadBakedModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleQuadModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleTriangleBakedModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal11MirrorModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal11ModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal12MirrorModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal12ModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal14MirrorModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal14ModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal18MirrorModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal18ModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal24MirrorModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal24ModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal28MirrorModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal28ModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal38MirrorModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal38ModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal48MirrorModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal48ModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/PaintBakedModelBase.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/PaintLineBakedModelBase.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/PaintModelBase.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/CustomPaintModelLoader.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/PaintLoaderBase.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomMetaPaintModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaint2x1Model.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaint3x1Model.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaint4x1Model.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaintModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomWallPaintModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineDoubleModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineDoubleThickModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineFarSideModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineFarSideThickModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineFilterLaneModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineMiddleDashDoubleModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineMiddleHalfDoubleModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineMiddleShortModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideDoubleModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideDoubleThickModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideShortModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideSingleModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideSingleThickModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineThickModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineThinCrossingModel.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/render/DynamicTextureProvider.java delete mode 100644 src/main/java/com/silvaniastudios/roads/client/render/Quad.java delete mode 100644 src/main/java/com/silvaniastudios/roads/fluids/FRFluids.java delete mode 100644 src/main/java/com/silvaniastudios/roads/fluids/ModFluid.java delete mode 100644 src/main/java/com/silvaniastudios/roads/items/FRItems.java delete mode 100644 src/main/java/com/silvaniastudios/roads/items/ItemFragment.java delete mode 100644 src/main/java/com/silvaniastudios/roads/items/ItemWrench.java delete mode 100644 src/main/java/com/silvaniastudios/roads/items/PaintGun.java delete mode 100644 src/main/java/com/silvaniastudios/roads/items/PneumaticDrill.java delete mode 100644 src/main/java/com/silvaniastudios/roads/items/RoadItemBase.java delete mode 100644 src/main/java/com/silvaniastudios/roads/items/RoadItemBlock.java delete mode 100644 src/main/java/com/silvaniastudios/roads/items/RoadsFuelHandler.java delete mode 100644 src/main/java/com/silvaniastudios/roads/items/TarmacCutterBlade.java delete mode 100644 src/main/java/com/silvaniastudios/roads/items/TarmacRammer.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/CompactorCategory.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/CompactorWrapper.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/CrusherCategory.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/CrusherWrapper.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/FRJEIPlugin.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/FabricatorCategory.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/FabricatorWrapper.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/PaintOvenCategory.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/PaintOvenWrapper.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/RoadFactoryCategory.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/RoadFactoryWrapper.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/TarDistillerCategory.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/TarDistillerWrapper.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/TarmacCutterCategory.java delete mode 100644 src/main/java/com/silvaniastudios/roads/jei/TarmacCutterWrapper.java delete mode 100644 src/main/java/com/silvaniastudios/roads/network/ClientGuiUpdatePacket.java delete mode 100644 src/main/java/com/silvaniastudios/roads/network/CompactorUpdatePacket.java delete mode 100644 src/main/java/com/silvaniastudios/roads/network/FabricatorUpdatePacket.java delete mode 100644 src/main/java/com/silvaniastudios/roads/network/PaintGunUpdatePacket.java delete mode 100644 src/main/java/com/silvaniastudios/roads/registries/CustomPaintModelRegistry.java delete mode 100644 src/main/java/com/silvaniastudios/roads/registries/DynamicBlockRegistry.java delete mode 100644 src/main/java/com/silvaniastudios/roads/registries/PaintCategoryList.java delete mode 100644 src/main/java/com/silvaniastudios/roads/registries/PaintGunItemRegistry.java delete mode 100644 src/main/java/com/silvaniastudios/roads/registries/PaintIconObject.java create mode 100644 src/main/resources/META-INF/mods.toml delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_3.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_1.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_1_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_2_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_double_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_double_3.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_3.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_concrete_1.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_concrete_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_1_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_2_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_edge_1.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_edge_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_end.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_low_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_low_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_standard_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_standard_edge_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_standard_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_tall_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_tall_edge_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_tall_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_1.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_1_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_2_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_wall_mid_concrete_1.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_wall_mid_concrete_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_1.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_1_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_2_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_mid_concrete_1.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_mid_concrete_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/bollard_1.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/bollard_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/bollard_3.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/bollard_folding_black.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/bollard_folding_smooth_metal.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/bollard_folding_yellow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_blue.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_blue_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_green.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_green_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_red.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_red_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_red_green.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_red_green_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_white.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_green.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_green_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_red.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_red_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_yellow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_yellow_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow_red.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow_red_double.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/compactor.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/compactor_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/crusher.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/crusher_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/drain_cover_1.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/drain_cover_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/fabricator.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/fabricator_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/fake_light_source.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/generic_blocks.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/hatch_box_red.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/hatch_box_white.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/hatch_box_yellow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/kerb_standard.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/line_red_crossing_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/line_white_crossing_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/line_yellow_crossing_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/manhole_cover_round.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/manhole_cover_square.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/paint_filler.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/paint_filler_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/paint_filler_hopper.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/paint_oven.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/paint_oven_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/paint_red_fluid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/paint_white_fluid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/paint_yellow_fluid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/post_large_horizontal.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/post_large_horizontal_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/post_large_vertical.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/post_large_vertical_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/post_medium_horizontal.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/post_medium_horizontal_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/post_medium_vertical.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/post_medium_vertical_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/post_small_horizontal.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/post_small_horizontal_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/post_small_vertical.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/post_small_vertical_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_arrow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_arrow_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_arrow_line.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_bike.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_bike_icon.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_bus.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_a.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_a_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_b.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_b_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_chevron_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_chevron_mid_left.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_chevron_mid_right.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_a.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_a_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_b.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_b_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_chevron_side_line.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_city.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_clear.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_crossing_paint.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_ctre.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_entry.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_give_way.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_junction_a.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_junction_b.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_left.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_left_empty.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_left_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_right.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_right_empty.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_right_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_chevron_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_chevron_mid_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_mid_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_keep.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_lane.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_left.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_merge_arrow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_no.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_only.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_pedestrian.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_right.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_slow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_stop.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_taxi.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_town.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/red_turn.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_blue.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_concrete_1.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_concrete_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_dark.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_1.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_1_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_2_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_4.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_4_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_8.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_8_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_4.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_4_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_8.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_8_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_3_8.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_3_8_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_4_8.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_4_8_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_dirt.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_fine.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_grass.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_gravel.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_green.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_light.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_muddy.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_muddy_dried.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_pale.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_red.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_sand.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_standard.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_stone.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_white.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_block_yellow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_factory.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_factory_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/road_snow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/sidewalk.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/sidewalk_clean.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/sidewalk_dark.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/sidewalk_tan.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/speed_bump.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/street_block_a.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/street_block_b.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/street_light_1.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/street_light_2.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/street_light_3.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/street_light_4.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/street_light_5.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/street_light_6.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/tactile_crossing_bumps.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/tar_distiller.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/tar_distiller_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/tar_fluid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/tarmac_cutter.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/tarmac_cutter_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/wheel_stop.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_arrow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_arrow_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_arrow_line.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_bike.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_bike_icon.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_bus.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_a.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_a_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_b.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_b_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_chevron_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_chevron_mid_left.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_chevron_mid_right.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_a.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_a_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_b.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_b_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_chevron_side_line.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_city.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_clear.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_crossing_paint.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_ctre.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_entry.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_give_way.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_junction_a.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_junction_b.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_left.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_left_empty.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_left_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_right.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_right_empty.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_right_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_keep.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_lane.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_left.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_no.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_only.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_right.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_slow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_stop.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_taxi.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_town.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/white_turn.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_arrow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_arrow_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_arrow_line.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_bike.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_bike_icon.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_bus.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_a.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_a_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_b.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_b_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_mid_left.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_mid_right.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_a.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_a_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_b.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_b_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_side_line.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_city.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_clear.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_crossing_paint.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_ctre.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_entry.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_give_way.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_junction_a.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_junction_b.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_left.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_left_empty.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_left_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_right.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_right_empty.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_right_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_chevron_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_chevron_mid_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_mid_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_keep.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_lane.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_left.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_merge_arrow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_no.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_only.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_pedestrian.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_right.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_slow.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_stop.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_taxi.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_town.json delete mode 100644 src/main/resources/assets/furenikusroads/blockstates/yellow_turn.json delete mode 100644 src/main/resources/assets/furenikusroads/lang/en_gb.lang delete mode 100644 src/main/resources/assets/furenikusroads/lang/en_us.lang delete mode 100644 src/main/resources/assets/furenikusroads/lang/it_it.lang delete mode 100644 src/main/resources/assets/furenikusroads/lang/zh_cn.lang delete mode 100644 src/main/resources/assets/furenikusroads/logo.png delete mode 100644 src/main/resources/assets/furenikusroads/models/block/1_1_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/1_2_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/1_2_diagonal_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/1_4_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/1_4_diagonal_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/1_8_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/1_8_diagonal_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/2_4_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/2_4_diagonal_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/2_8_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/2_8_diagonal_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/3_8_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/3_8_diagonal_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/4_8_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/4_8_diagonal_mirror.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_2_n.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_3_n.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_2_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_2_inventory_double.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_3_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_3_inventory_double.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_corner.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_corner_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_corner_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_inventory_double.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_no_post.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_no_post_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_no_post_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_edge_post.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_mid_2_small.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_mid_3_small.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_mid_small.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_bars_n.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_concrete_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_concrete_edge_corner.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_concrete_edge_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_concrete_edge_left.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_concrete_edge_left_down.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_concrete_edge_right.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_concrete_edge_right_down.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_concrete_middle.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_concrete_middle_n.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_low_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_low_edge_corner.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_low_edge_post.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_low_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_low_mid_n.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_low_mid_post.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard_edge_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard_edge_inventory_double.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard_edge_l.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard_edge_post.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard_edge_r.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard_middle_connect_n.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard_middle_connect_widget.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard_middle_end.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard_middle_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard_middle_post.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_standard_post.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_tall_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_tall_edge_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_tall_edge_inventory_double.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_tall_edge_l.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_tall_edge_post.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_tall_edge_r.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_tall_middle_connect_n.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_tall_middle_connect_widget.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_tall_middle_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_edge_corner.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_edge_post.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_inventory_double.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_mid_small.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_n.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_pole_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_pole_edge_corner.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_pole_edge_double_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_pole_edge_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_pole_edge_l.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_pole_edge_l_down.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_pole_edge_r.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_pole_edge_r_down.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_pole_mid_small.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/barrier_wall_pole_n.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/base_plate.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/base_plate_crusher.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/base_plate_fabricator.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/base_plate_paint_filler.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/base_plate_paint_oven.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/base_plate_road_factory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/base_plate_tar_distiller.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/base_plate_tarmac_cutter.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_concrete_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_folding_1_down.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_folding_1_upright.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_folding_2_down.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_folding_2_upright.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_portable.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_smooth.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_smooth_light.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_smooth_retract_down.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_smooth_retract_up.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_smooth_small.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_smooth_small_retract_down.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_smooth_small_retract_up.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_stumpy.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_stumpy_retracted.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_thicc.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_topped.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_topped_ringed.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_traffic_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/bollard_traffic_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/cats_eye.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/cats_eye_double.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/chevron_side_line_down_a.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/chevron_side_line_down_b.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/chevron_side_line_up_a.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/chevron_side_line_up_b.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/compactor.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/connected_diagonal_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/connected_diagonal_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/crossing_paint.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/crossing_paint_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/crusher.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/draincover_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/draincover_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/fabricator.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/hatch_box.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/hatch_box_e.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/hatch_box_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/hatch_box_n.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/hatch_box_s.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/hatch_box_w.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/hopper_connect.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/hopper_core.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/hopper_io_nesw.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/hopper_io_top.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/icon.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_a.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_a_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_a_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_a_thin_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_b.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_b_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_b_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_b_thin_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_a_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_a_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_a_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_a_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_b_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_b_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_b_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_b_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_thin_a_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_thin_a_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_thin_a_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_thin_a_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_thin_b_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_thin_b_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_thin_b_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_left_down_thin_b_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_a.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_a_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_a_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_a_thin_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_b.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_b_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_b_thin.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_b_thin_edge.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_a_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_a_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_a_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_a_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_b_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_b_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_b_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_b_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_thin_a_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_thin_a_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_thin_a_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_thin_a_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_thin_b_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_thin_b_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_thin_b_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_chevron_right_down_thin_b_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_left_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_left_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_left_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_left_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_left_thin_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_left_thin_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_left_thin_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_left_thin_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_right_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_right_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_right_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_right_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_right_thin_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_right_thin_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_right_thin_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/junction_filter_right_thin_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/kerb_a.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/kerb_b.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/kerb_inv.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/kerb_left.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/kerb_left_b.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/kerb_right.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/kerb_right_b.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/line_far_side.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/line_filter_lane.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/line_thin_crossing.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/manhole_cover_round.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/manhole_cover_square.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/nomodel.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/paint_filler_station.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/paint_filler_station_gunloaded.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/paint_oven.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_large.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_large_base.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_large_base_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_large_horizontal_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_large_horizontal_side.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_large_under.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_large_up.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_large_up_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_large_v_to_h.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_large_v_to_h_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_medium.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_medium_base.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_medium_base_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_medium_horizontal_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_medium_horizontal_side.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_medium_under.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_medium_up.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_medium_up_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_medium_v_to_h.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_medium_v_to_h_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_small.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_small_base.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_small_base_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_small_horizontal_mid.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_small_horizontal_side.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_small_under.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_small_up.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_small_up_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_small_v_to_h.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/post_small_v_to_h_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_10_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_11_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_12_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_13_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_14_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_15_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_16_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_1_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_2_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_3_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_4_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_5_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_6_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_7_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_8_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_9_16.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_factory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_factory_fluid_left.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/road_factory_fluid_up.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/side_line_short.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/sidewalk_east.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/sidewalk_north.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/sidewalk_north_east.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/sidewalk_north_west.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/sidewalk_south.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/sidewalk_south_east.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/sidewalk_south_west.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/sidewalk_west.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/sign_rigging_h.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/sign_rigging_v.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/sign_rigging_v_to_h.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/sign_rigging_v_to_h2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/speed_bump_end_l.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/speed_bump_end_r.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/speed_bump_full_l.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/speed_bump_full_r.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/speed_bump_inventory.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/street_light_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/street_light_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/street_light_3.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/street_light_4.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/street_light_5.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/street_light_6.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tactile_marker.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tar_distiller.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tar_distiller_fluid_out_left.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tar_distiller_fluid_out_right.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tar_distiller_fluid_out_top.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tarmac_cutter.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tarmac_cutter_blade.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tarmac_cutter_block.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow_diagonal.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow_diagonal_line_full.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow_line.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow_line_connect_diagonal_left.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow_line_connect_diagonal_right.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow_line_connect_left.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow_line_connect_left_full.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow_line_connect_right.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow_line_connect_right_full.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow_line_connect_up.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow_line_inv.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_arrow_side.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/tile_full.json delete mode 100644 src/main/resources/assets/furenikusroads/models/block/wheel_stop.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_1.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_10.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_11.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_12.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_13.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_14.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_15.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_16.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_2.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_3.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_4.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_5.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_6.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_7.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_8.json create mode 100644 src/main/resources/assets/furenikusroads/models/blocks/roads/road_block_9.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/cats_eye.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/cement_dust.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/clinker_mix.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/coal_coke.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/diamond_nugget.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/impact_wrench.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/large_glass_tank.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/limestone_dust.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/machine_frame.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/machine_frame_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/paint_gun.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/paint_gun_barrel.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/paint_gun_display.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/paint_scraper.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/pneumatic_drill.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/pneumatic_drill_bit.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/sidewalk_fragment_clean.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/sidewalk_fragment_dark.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/sidewalk_fragment_standard.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/sidewalk_fragment_tan.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/small_glass_tank.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_cutter_blade_1_diamond.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_cutter_blade_1_gold.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_cutter_blade_1_iron.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_cutter_blade_2_diamond.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_cutter_blade_2_gold.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_cutter_blade_2_iron.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_cutter_blade_4_diamond.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_cutter_blade_4_gold.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_cutter_blade_4_iron.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_cutter_blade_8_diamond.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_cutter_blade_8_gold.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_cutter_blade_8_iron.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_blue.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_concrete_1.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_concrete_2.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_dark.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_dirt.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_fine.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_grass.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_gravel.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_green.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_light.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_muddy.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_pale.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_red.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_sand.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_standard.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_stone.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_white.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_fragment_yellow.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tarmac_rammer.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/tool_handle.json delete mode 100644 src/main/resources/assets/furenikusroads/models/item/wrench.json delete mode 100644 src/main/resources/assets/furenikusroads/models/test.json delete mode 100644 src/main/resources/assets/furenikusroads/optifine/emissive.properties delete mode 100644 src/main/resources/assets/furenikusroads/paints/_README.txt delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_icon.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_mid_1.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_mid_2.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_mid_left_1.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_mid_left_2.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_mid_right_1.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_mid_right_2.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_mid_thin_1.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_mid_thin_2.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_mid_thin_left_1.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_mid_thin_left_2.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_mid_thin_right_1.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/chevron_mid_thin_right_2.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/crossing_diagonal_1.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/crossing_diagonal_2.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/crossing_diagonal_3.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/crossing_diagonal_4.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/empty.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/give_way_high.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/give_way_low.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_in_a.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_in_b.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_1.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_2.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_3.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_a.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_b.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_chevron_2.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_chevron_3.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_chevron_4.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_chevron_thin_3.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_line_connection_a.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_line_connection_b.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_line_connection_c.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_line_connection_d.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_thin_1.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_thin_2.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_mid_thin_3.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_out_a.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_out_b.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_side_line_connection_a.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_side_line_connection_b.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_side_line_connection_c.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_side_line_connection_d.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_side_line_connection_thick_thick_a.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_side_line_connection_thick_thick_b.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_side_line_connection_thick_thick_c.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_side_line_connection_thick_thick_d.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_side_line_connection_thin_a.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_side_line_connection_thin_b.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_side_line_connection_thin_c.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/junction_side_line_connection_thin_d.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_a.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_b.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_c.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_d.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_e.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_f.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_g.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_h.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_i.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_j.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_k.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_n.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_o.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_p.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_q.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_s.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_t.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_u.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_v.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_w.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_x.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_y.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/letter_z.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/merge_arrow_high.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/merge_arrow_low.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/number_0.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/number_1.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/number_2.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/number_3.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/number_4.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/number_5.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/number_6.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/number_7.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/number_8.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/number_9.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/pedestrian_high.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/pedestrian_low.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/punct_exclaim.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/punct_hash.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/punct_question.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/punct_slash.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_bike_icon_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_bike_icon_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_bike_icon_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_bike_icon_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_bike_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_bike_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_bike_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_bike_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_bus_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_bus_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_bus_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_bus_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_city_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_city_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_city_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_city_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_clear_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_clear_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_clear_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_clear_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_ctre_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_ctre_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_ctre_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_ctre_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_entry_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_entry_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_entry_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_entry_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_keep_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_keep_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_keep_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_keep_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_lane_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_lane_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_lane_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_lane_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_left_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_left_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_left_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_left_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_no_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_no_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_no_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_no_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_only_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_only_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_only_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_only_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_right_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_right_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_right_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_right_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_slow_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_slow_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_slow_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_slow_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_stop_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_stop_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_stop_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_stop_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_taxi_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_taxi_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_taxi_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_taxi_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_town_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_town_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_town_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_town_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_turn_l.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_turn_m.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_turn_r.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/text_turn_small.json delete mode 100644 src/main/resources/assets/furenikusroads/paints/wheelchair_icon.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_green.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_green_b.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_green_c.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_green_d.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_red.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_red_b.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_red_c.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_red_d.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_white.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_white_b.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_white_c.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_white_d.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_yellow.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_yellow_b.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_yellow_c.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/cats_eye_yellow_d.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/clinker_mix.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/compactor.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/compactor_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/concrete_1.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/concrete_2.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/crusher.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/crusher_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/diamond.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/diamond_nugget.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/fabricator.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/fabricator_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/kerb_standard_red.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/kerb_standard_white.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/kerb_standard_yellow.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/large_glass_tank.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/limestone_block.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/machine_frame.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/machine_frame_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/paint_filler.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/paint_filler_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/paint_filler_hopper.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/paint_gun.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/paint_gun_barrel.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/paint_gun_display.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/paint_oven.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/paint_oven_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/paint_scraper.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/pneumatic_drill.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/pneumatic_drill_bit.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/road_block_muddy.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/road_block_muddy_dried.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/road_factory.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/road_factory_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_2.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_0.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_1.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_10.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_11.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_12.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_13.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_14.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_15.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_2.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_3.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_4.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_5.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_6.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_7.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_8.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_a_9.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_0.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_1.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_10.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_11.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_12.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_13.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_14.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_15.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_2.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_3.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_4.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_5.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_6.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_7.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_8.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_block_b_9.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_clean.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_dark.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/sidewalk_tan.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/small_glass_tank.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tar_distiller.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tar_distiller_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_1.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_10.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_11.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_12.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_13.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_14.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_15.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_16.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_2.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_3.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_4.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_5.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_6.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_7.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_8.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_blue_9.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_blade_diamond_1.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_blade_diamond_2.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_blade_diamond_4.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_blade_diamond_8.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_blade_gold_1.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_blade_gold_2.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_blade_gold_4.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_blade_gold_8.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_blade_iron_1.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_blade_iron_2.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_blade_iron_4.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_blade_iron_8.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_cutter_electric.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_1.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_10.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_11.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_12.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_13.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_14.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_15.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_16.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_2.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_3.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_4.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_5.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_6.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_7.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_8.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_green_9.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_rammer.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_1.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_10.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_11.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_12.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_13.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_14.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_15.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_16.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_2.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_3.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_4.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_5.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_6.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_7.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_8.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_red_9.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_1.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_10.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_11.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_12.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_13.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_14.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_15.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_16.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_2.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_3.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_4.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_5.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_6.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_7.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_8.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_white_9.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_1.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_10.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_11.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_12.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_13.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_14.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_15.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_16.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_2.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_3.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_4.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_5.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_6.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_7.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_8.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tarmac_yellow_9.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/tool_handle.json delete mode 100644 src/main/resources/assets/furenikusroads/recipes/wrench.json delete mode 100644 src/main/resources/assets/furenikusroads/sounds.json delete mode 100644 src/main/resources/assets/furenikusroads/sounds/pneumatic_drill.ogg rename src/main/resources/assets/furenikusroads/textures/{blocks/generic_blocks_2.png => block/cement.png} (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks/generic_blocks_1.png => block/clinker.png} (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks/generic_blocks_0.png => block/crushed_rock.png} (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks/generic_blocks_3.png => block/limestone.png} (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_blue.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_concrete_1.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_concrete_2.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_dark.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_fine.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_green.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_light.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_muddy.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_muddy_dried.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_pale.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_red.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_standard.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_white.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/road_block_yellow.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/sidewalk.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/sidewalk_clean.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/sidewalk_dark.png (100%) rename src/main/resources/assets/furenikusroads/textures/{blocks => block/roads}/sidewalk_tan.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/blank.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/bollard_black.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/bollard_black_ringed.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/bollard_ringed.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/bollard_small_portable.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/bollard_small_portable_yellow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/bollard_smooth_metal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/bollard_striped.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/bollard_topped.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/bollard_yellow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/cats_eye_blue.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/cats_eye_blue_e.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/cats_eye_frame.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/cats_eye_green.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/cats_eye_green_e.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/cats_eye_red.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/cats_eye_red_e.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/cats_eye_white.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/cats_eye_white_e.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/cats_eye_yellow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/cats_eye_yellow_e.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/crusher_vents.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/crusher_vents_electric.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/grass_inventory.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/hopper_in.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/hopper_none.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/hopper_out.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/hopper_tank.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/hopper_tank_top.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/hopper_type_item.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/hopper_type_none.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/hopper_type_red.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/hopper_type_white.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/hopper_type_yellow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/lineBlock1_11.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/lineBlock1_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/lineBlock1_13.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/lineBlock1_14.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/lineBlock1_15.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/lineBlock1_16.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_glass.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_hazard.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_metal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_metal_dark.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_metal_electric.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_metal_patterned.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_metal_patterned_electric.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_part_dark.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_part_plain.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_part_plain_electric.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_piping.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_vent_back_off.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_vent_back_on.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/machine_vent_back_on_e.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/manhole_no_rust.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/manhole_slight_rust.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/paint_filler_machine_a.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/paint_filler_machine_a_electric.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/paint_filler_machine_b.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/paint_filler_machine_b_electric.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/paint_filler_machine_c.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/paint_filler_machine_c_electric.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/paint_filler_machine_display.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/paint_gun.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/paint_red.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/paint_white.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/paint_yellow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/pneumatic_drill.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/road_factory_machine_a.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/road_factory_machine_a_electric.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/road_factory_machine_b.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/road_factory_machine_b_electric.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/sidewalk_kerb.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/sidewalk_kerb_red.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/sidewalk_kerb_yellow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/sidewalk_red.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/sidewalk_white.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/sidewalk_yellow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_13.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_17.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_1.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_10.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_11.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_13.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_14.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_15.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_3.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_5.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_6.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_7.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_a_9.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_1.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_10.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_11.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_13.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_14.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_15.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_3.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_5.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_6.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_7.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_block_b_9.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/street_light_bulb.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/tactile_paving.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/tar_distiller_machine_a.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/tar_distiller_machine_a_electric.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/tar_distiller_machine_b.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/tar_distiller_machine_b_electric.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/tarmac_cutter_blade_diamond.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/tarmac_cutter_blade_gold.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/tarmac_cutter_blade_iron.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/traffic_bollard_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/traffic_bollard_left_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/traffic_bollard_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/blocks => textures_archive/block}/traffic_bollard_right_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/edit.ahk (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/red_paint_flowing.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/red_paint_flowing.png.mcmeta (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/red_paint_particle.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/red_paint_still.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/red_paint_still.png.mcmeta (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/tar_flowing.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/tar_flowing.png.mcmeta (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/tar_particle.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/tar_still.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/tar_still.png.mcmeta (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/white_paint_flowing.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/white_paint_flowing.png.mcmeta (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/white_paint_particle.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/white_paint_still.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/white_paint_still.png.mcmeta (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/yellow_paint_flowing.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/yellow_paint_flowing.png.mcmeta (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/yellow_paint_particle.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/yellow_paint_still.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/fluids/yellow_paint_still.png.mcmeta (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/1.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/1_hovered.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/2.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/2_hovered.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/3.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/3_hovered.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/4_hovered.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/5.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/5_hovered.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/empty_hovered.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/buttons/template.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/category_list.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/compactor.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/crusher.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/fabricator.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/fabricator_list.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/jei_texture_1.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/jei_texture_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/jei_texture_3.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/paint_filler.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/paint_gun_background.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/paint_gun_background_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/paint_list.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/paint_oven.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/road_factory.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/tar_distiller.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/gui/tarmac_cutter.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/cement_dust.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/clinker_mix.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/coal_coke.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/diamond_nugget.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/limestone_dust.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_blue.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_filler_glass.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_barrel.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/hatch_box_red.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/hatch_box_white.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/hatch_box_yellow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_crossing_diagonal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_far_side.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_far_side_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_filter_lane.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_middle_dash_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_middle_half_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_middle_short.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_side_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_side_double_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_side_short.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_side_single.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_side_single_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_straight_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_straight_double_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_straight_double_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_straight_double_thick_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_straight_full.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_straight_full_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_straight_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_straight_thick_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_red_thin_crossing.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_crossing_diagonal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_far_side.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_far_side_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_filter_lane.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_middle_dash_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_middle_half_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_middle_short.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_side_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_side_double_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_side_short.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_side_single.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_side_single_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_straight_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_straight_double_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_straight_double_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_straight_double_thick_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_straight_full.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_straight_full_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_straight_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_straight_thick_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_white_thin_crossing.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_crossing_diagonal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_far_side.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_far_side_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_filter_lane.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_middle_dash_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_middle_half_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_middle_short.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_side_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_side_double_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_side_short.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_side_single.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_side_single_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_straight_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_straight_double_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_straight_double_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_straight_double_thick_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_straight_full.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_straight_full_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_straight_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_straight_thick_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/line_yellow_thin_crossing.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_01.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_01_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_23.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_23_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_45.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_45_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_67.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_67_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_89.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_89_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_ab.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_ab_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_cd.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_cd_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_ef.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_ef_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_gh.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_gh_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_ij.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_ij_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_kl.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_kl_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_mn.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_mn_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_op.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_op_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_punct_hash_slash.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_punct_hash_slash_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_punct_question_exclamation.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_punct_question_exclamation_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_qr.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_qr_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_st.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_st_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_uv.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_uv_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_wx.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_wx_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_yz.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_red_yz_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_01.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_01_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_23.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_23_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_45.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_45_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_67.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_67_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_89.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_89_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_ab.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_ab_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_cd.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_cd_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_ef.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_ef_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_gh.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_gh_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_ij.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_ij_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_kl.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_kl_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_mn.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_mn_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_op.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_op_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_punct_hash_slash.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_punct_hash_slash_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_punct_question_exclamation.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_punct_question_exclamation_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_qr.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_qr_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_st.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_st_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_uv.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_uv_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_wx.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_wx_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_yz.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_white_yz_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_01.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_01_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_23.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_23_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_45.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_45_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_67.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_67_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_89.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_89_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_ab.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_ab_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_cd.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_cd_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_ef.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_ef_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_gh.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_gh_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_ij.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_ij_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_kl.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_kl_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_mn.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_mn_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_op.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_op_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_punct_hash_slash.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_punct_hash_slash_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_punct_question_exclamation.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_punct_question_exclamation_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_qr.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_qr_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_st.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_st_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_uv.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_uv_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_wx.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_wx_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_yz.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/paint_letter_yellow_yz_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_arrow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_arrow_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_arrow_diagonal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_arrow_diagonal_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_arrow_line.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_bike.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_bike_icon.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_bus.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_chevron.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_chevron_left_a.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_chevron_left_a_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_chevron_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_chevron_mid_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_chevron_mid_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_chevron_mid_left_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_chevron_mid_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_chevron_mid_right_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_chevron_right_a.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_chevron_right_a_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_chevron_side_line.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_city.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_clear.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_crossing_paint.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_ctre.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_entry.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_give_way.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_a.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_a_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_a_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_b.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_b_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_b_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_filter_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_filter_left_empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_filter_left_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_filter_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_filter_right_empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_filter_right_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_fork_chevron_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_fork_chevron_mid_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_fork_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_fork_mid_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_mid_line_connection.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_mid_line_connection_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_mid_line_connection_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_mid_line_connection_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_side_line_connection.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_side_line_connection_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_side_line_connection_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_side_line_connection_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_side_line_connection_thick_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_side_line_connection_thick_thick_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_side_line_connection_thick_thick_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_side_line_connection_thick_thick_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_side_line_connection_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_side_line_connection_thin_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_side_line_connection_thin_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_junction_side_line_connection_thin_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_keep.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_lane.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_merge_arrow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_no.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_only.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_pedestrian.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_slow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_stop.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_taxi.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_town.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_turn.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/red_wheelchair_icon.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_arrow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_arrow_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_arrow_diagonal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_arrow_diagonal_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_arrow_line.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_bike.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_bike_icon.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_bus.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_chevron.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_chevron_left_a.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_chevron_left_a_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_chevron_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_chevron_mid_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_chevron_mid_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_chevron_mid_left_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_chevron_mid_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_chevron_mid_right_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_chevron_right_a.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_chevron_right_a_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_chevron_side_line.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_city.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_clear.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_crossing_paint.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_ctre.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_entry.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_give_way.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_a.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_a_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_a_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_b.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_b_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_b_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_filter_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_filter_left_empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_filter_left_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_filter_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_filter_right_empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_filter_right_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_fork_chevron_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_fork_chevron_mid_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_fork_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_fork_mid_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_mid_line_connection.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_mid_line_connection_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_mid_line_connection_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_mid_line_connection_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_side_line_connection.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_side_line_connection_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_side_line_connection_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_side_line_connection_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_side_line_connection_thick_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_side_line_connection_thick_thick_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_side_line_connection_thick_thick_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_side_line_connection_thick_thick_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_side_line_connection_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_side_line_connection_thin_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_side_line_connection_thin_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_junction_side_line_connection_thin_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_keep.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_lane.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_merge_arrow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_no.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_only.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_pedestrian.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_slow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_stop.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_taxi.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_town.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_turn.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/white_wheelchair_icon.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_arrow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_arrow_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_arrow_diagonal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_arrow_diagonal_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_arrow_line.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_bike.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_bike_icon.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_bus.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_chevron.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_chevron_left_a.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_chevron_left_a_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_chevron_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_chevron_mid_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_chevron_mid_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_chevron_mid_left_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_chevron_mid_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_chevron_mid_right_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_chevron_right_a.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_chevron_right_a_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_chevron_side_line.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_city.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_clear.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_crossing_paint.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_ctre.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_entry.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_give_way.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_a.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_a_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_a_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_b.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_b_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_b_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_filter_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_filter_left_empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_filter_left_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_filter_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_filter_right_empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_filter_right_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_fork_chevron_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_fork_chevron_mid_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_fork_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_fork_mid_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_mid_line_connection.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_mid_line_connection_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_mid_line_connection_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_mid_line_connection_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_side_line_connection.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_side_line_connection_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_side_line_connection_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_side_line_connection_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_side_line_connection_thick_thick.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_side_line_connection_thick_thick_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_side_line_connection_thick_thick_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_side_line_connection_thick_thick_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_side_line_connection_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_side_line_connection_thin_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_side_line_connection_thin_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_junction_side_line_connection_thin_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_keep.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_lane.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_merge_arrow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_no.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_only.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_pedestrian.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_slow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_stop.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_taxi.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_town.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_turn.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_gun_display/yellow_wheelchair_icon.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/line_red_crossing_diagonal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/line_white_crossing_diagonal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/line_yellow_crossing_diagonal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_arrow_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_arrow_diagonal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_arrow_diagonal_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_crossing_paint.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_give_way.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_junction_filter_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_junction_filter_left_empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_junction_filter_left_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_junction_filter_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_junction_filter_right_empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_junction_filter_right_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_junction_fork_chevron_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_junction_fork_chevron_mid_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_junction_fork_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_junction_fork_mid_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_merge_arrow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/red_pedestrian.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_arrow_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_arrow_diagonal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_arrow_diagonal_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_crossing_paint.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_give_way.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_junction_filter_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_junction_filter_left_empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_junction_filter_left_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_junction_filter_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_junction_filter_right_empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_junction_filter_right_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_junction_fork_chevron_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_junction_fork_chevron_mid_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_junction_fork_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_junction_fork_mid_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_merge_arrow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/white_pedestrian.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_arrow_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_arrow_diagonal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_arrow_diagonal_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_crossing_paint.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_give_way.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_junction_filter_left.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_junction_filter_left_empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_junction_filter_left_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_junction_filter_right.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_junction_filter_right_empty.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_junction_filter_right_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_junction_fork_chevron_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_junction_fork_chevron_mid_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_junction_fork_mid.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_junction_fork_mid_thin.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_merge_arrow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_icons/yellow_pedestrian.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_red.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_scraper.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_white.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/paint_yellow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/pneumatic_drill.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/sidewalk_fragment_clean.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/sidewalk_fragment_dark.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/sidewalk_fragment_standard.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/sidewalk_fragment_tan.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/street_light_bulb.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_cutter_blade.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_cutter_blade_diamond.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_cutter_blade_gold.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_cutter_blade_iron.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_cutter_machine.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_cutter_metal.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_cutter_tyre.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_blue.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_concrete_1.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_concrete_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_dark.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_dirt.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_fine.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_grass.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_gravel.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_green.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_light.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_muddy.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_pale.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_red.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_sand.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_standard.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_stone.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_white.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tarmac_fragment_yellow.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/tool_handle.png (100%) rename src/main/resources/assets/furenikusroads/{textures/items => textures_archive/item}/wrench.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/arrow_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/arrow_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures/paints/arrow_diagonal_4.png => textures_archive/paints/arrow_diagonal_0.png} (100%) rename src/main/resources/assets/furenikusroads/{textures/paints/arrow_diagonal_0.png => textures_archive/paints/arrow_diagonal_4.png} (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/arrow_line_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/bike_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/bike_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/bike_icon_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/bike_icon_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/bus_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/bus_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/chevron_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/chevron_left_a_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/chevron_left_a_thin_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/chevron_mid_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/chevron_mid_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/chevron_mid_left_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/chevron_mid_left_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/chevron_mid_right_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/chevron_mid_right_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/chevron_right_a_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/chevron_right_a_thin_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/chevron_side_line_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/city_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/city_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/clear_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/clear_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/crossing_paint_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/ctre_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/ctre_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/entry_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/entry_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/give_way_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/hatch_box_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_a_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_a_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_a_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_b_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_b_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_b_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_filter_left_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_filter_left_empty_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_filter_left_thin_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_filter_right_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_filter_right_empty_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_filter_right_thin_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_fork_chevron_mid_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_fork_chevron_mid_thin_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_fork_mid_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_fork_mid_thin_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_mid_line_connection_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_mid_line_connection_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_mid_line_connection_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_mid_line_connection_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_side_line_connection_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_side_line_connection_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_side_line_connection_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_side_line_connection_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_side_line_connection_thick_thick_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_side_line_connection_thick_thick_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_side_line_connection_thick_thick_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_side_line_connection_thick_thick_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_side_line_connection_thin_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_side_line_connection_thin_12.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_side_line_connection_thin_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/junction_side_line_connection_thin_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/keep_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/keep_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/lane_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/lane_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/left_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/left_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_crossing_diagonal_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_far_side_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_far_side_6.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_far_side_thick_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_far_side_thick_6.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_filter_lane_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_middle_dash_double_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_middle_half_double.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_middle_half_double_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_middle_short_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_side_double_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_side_double_6.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_side_double_thick_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_side_double_thick_6.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_side_short_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_side_single_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_side_single_6.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_side_single_thick_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_side_single_thick_6.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_straight_double_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_straight_double_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_straight_double_thick_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_straight_double_thick_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_straight_full_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_straight_full_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_straight_thick_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_straight_thick_2.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/line_thin_crossing_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/merge_arrow_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/no_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/no_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/only_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/only_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_01_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_01_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_23_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_23_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_45_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_45_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_67_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_67_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_89_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_89_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_ab_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_ab_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_cd_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_cd_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_ef_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_ef_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_gh_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_gh_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_ij_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_ij_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_kl_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_kl_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_mn_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_mn_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_op_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_op_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_punct_hash_slash_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_punct_hash_slash_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_punct_question_exclamation_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_punct_question_exclamation_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_qr_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_qr_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_st_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_st_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_uv_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_uv_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_wx_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_wx_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_yz_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/paint_letter_yz_8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/pedestrian_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/right_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/right_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/slow_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/slow_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/stop_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/stop_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/taxi_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/taxi_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/town_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/town_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/turn_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/turn_4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/paints/wheelchair_icon_0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/roadBlockDirt0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/roadBlockDirt12.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/roadBlockDirt4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/roadBlockDirt8.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/roadBlockDirtCorner0.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/roadBlockDirtCorner12.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/roadBlockDirtCorner4.png (100%) rename src/main/resources/assets/furenikusroads/{textures => textures_archive}/roadBlockDirtCorner8.png (100%) delete mode 100644 src/main/resources/mcmod.info diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..f811f6ae --- /dev/null +++ b/.gitattributes @@ -0,0 +1,5 @@ +# Disable autocrlf on generated files, they always generate with LF +# Add any extra files or paths here to make git stop saying they +# are changed when only line endings change. +src/generated/**/.cache/cache text eol=lf +src/generated/**/*.json text eol=lf diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 00000000..bf864e12 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,24 @@ +name: Build + +on: [push, pull_request] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 1000 + fetch-tags: true + + - name: Setup JDK 17 + uses: actions/setup-java@v2 + with: + java-version: '17' + distribution: 'temurin' + + - name: Build with Gradle + uses: gradle/gradle-build-action@v2 + with: + arguments: build diff --git a/.gitignore b/.gitignore index 12f86447..3a0858df 100644 --- a/.gitignore +++ b/.gitignore @@ -20,6 +20,8 @@ build # other eclipse run +runs +run-data -# Files from Forge MDK -forge*changelog.txt +repo +src/generated/resources/.cache \ No newline at end of file diff --git a/build.gradle b/build.gradle index 123f1c43..fa49e03e 100644 --- a/build.gradle +++ b/build.gradle @@ -1,147 +1,142 @@ plugins { + id 'java-library' id 'eclipse' + id 'idea' id 'maven-publish' - id 'net.minecraftforge.gradle' version '5.1.69' - id 'wtf.gofancy.fancygradle' version '1.1.+' + id 'net.neoforged.gradle.userdev' version '7.0.5' } -version = "1.2.6" -group = "com.silvaniastudios.roads" // http://maven.apache.org/guides/mini/guide-naming-conventions.html -archivesBaseName = "Furenikus_Roads" - -sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8' // Need this here so eclipse task generates correctly. - -minecraft { - // The mappings can be changed at any time, and must be in the following format. - // snapshot_YYYYMMDD Snapshot are built nightly. - // stable_# Stables are built at the discretion of the MCP team. - // Use non-default mappings at your own risk. they may not always work. - // Simply re-run your setup task after changing the mappings to update your workspace. - //mappings channel: 'snapshot', version: '20171003-1.12' - mappings channel: 'snapshot', version: '20171003-1.12' - //makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable. - - // accessTransformer = file('src/main/resources/META-INF/accesstransformer.cfg') - - // Default run configurations. - // These can be tweaked, removed, or duplicated as needed. - runs { - client { - workingDirectory project.file('run') - - // Recommended logging data for a userdev environment - property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' - - // Recommended logging level for the console - property 'forge.logging.console.level', 'debug' - } +version = mod_version +group = mod_group_id - server { +repositories { + mavenLocal() +} - // Recommended logging data for a userdev environment - property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' +base { + archivesName = mod_id +} - // Recommended logging level for the console - property 'forge.logging.console.level', 'debug' - } +// Mojang ships Java 17 to end users in 1.18+, so your mod should target Java 17. +java.toolchain.languageVersion = JavaLanguageVersion.of(17) + +//minecraft.accessTransformers.file rootProject.file('src/main/resources/META-INF/accesstransformer.cfg') +//minecraft.accessTransformers.entry public net.minecraft.client.Minecraft textureManager # textureManager + +// Default run configurations. +// These can be tweaked, removed, or duplicated as needed. +runs { + // applies to all the run configs below + configureEach { + // Recommended logging data for a userdev environment + // The markers can be added/remove as needed separated by commas. + // "SCAN": For mods scan. + // "REGISTRIES": For firing of registry events. + // "REGISTRYDUMP": For getting the contents of all registries. + systemProperty 'forge.logging.markers', 'REGISTRIES' + + // Recommended logging level for the console + // You can set various levels here. + // Please read: https://stackoverflow.com/questions/2031163/when-to-use-the-different-log-levels + systemProperty 'forge.logging.console.level', 'debug' + + modSource project.sourceSets.main } -} -repositories { - mavenLocal() - maven { - name "Progwml6 maven" - url "https://dvs1.progwml6.com/files/maven/" + client { + // Comma-separated list of namespaces to load gametests from. Empty = all namespaces. + systemProperty 'forge.enabledGameTestNamespaces', project.mod_id } - maven { - name "ChickenBones Maven" - url "https://chickenbones.net/maven/" + + server { + systemProperty 'forge.enabledGameTestNamespaces', project.mod_id + programArgument '--nogui' } - maven { - name "CoFH Maven" - url "https://maven.covers1624.net" + + // This run config launches GameTestServer and runs all registered gametests, then exits. + // By default, the server will crash when no gametests are provided. + // The gametest system is also enabled by default for other run configs under the /test command. + gameTestServer { + systemProperty 'forge.enabledGameTestNamespaces', project.mod_id } -} -dependencies { - // Specify the version of Minecraft to use, If this is any group other then 'net.minecraft' it is assumed - // that the dep is a ForgeGradle 'patcher' dependency. And it's patches will be applied. - // The userdev artifact is a special name and will get all sorts of transformations applied to it. - minecraft 'net.minecraftforge:forge:1.12.2-14.23.5.2859' - - // compile against the JEI API but do not include it at runtime - compileOnly("mezz.jei:jei_1.12.2:4.15.0.289:api") //1.12.2 4.15.0.289 - // at runtime, use the full JEI jar - //runtimeOnly("mezz.jei:jei_1.12.2:4.15.0.289") - - compileOnly("cofh:RedstoneFlux:1.12-2.1.0.6:universal") - compileOnly("cofh:CoFHCore:1.12.2-4.6.0.+:universal") - compileOnly("cofh:CoFHWorld:1.12.2-1.2.0.+:universal") - compileOnly("cofh:ThermalFoundation:1.12.2-2.6.0.+:universal") - compileOnly("cofh:ThermalDynamics:1.12.2-2.5.5.+:universal") - compileOnly("cofh:ThermalExpansion:1.12.2-5.5.4.+:universal") - - //implementation files("libs/CodeChickenLib-1.12.2-3.2.3.358-deobf.jar") - - //runtimeOnly fg.deobf("codechicken:CodeChickenLib:1.12.2-3.2.3.+:universal") -} + data { + // example of overriding the workingDirectory set in configureEach above, uncomment if you want to use it + // workingDirectory project.file('run-data') -task deobfJar(type: Jar) { - from sourceSets.main.output - classifier = 'deobf' + // Specify the modid for data generation, where to output the resulting resource, and where to look for existing resources. + programArguments.addAll '--mod', project.mod_id, '--all', '--output', file('src/generated/resources/').getAbsolutePath(), '--existing', file('src/main/resources/').getAbsolutePath() + } } -task sourceJar(type: Jar) { - from sourceSets.main.allSource - classifier = 'sources' -} +// Include resources generated by data generators. +sourceSets.main.resources { srcDir 'src/generated/resources' } -artifacts { - archives deobfJar - archives sourceJar - archives jar + +dependencies { + // Specify the version of Minecraft to use. + // Depending on the plugin applied there are several options. We will assume you applied the userdev plugin as shown above. + // The group for userdev is net.neoforged, the module name is neoforge, and the version is the same as the neoforge version. + // You can however also use the vanilla plugin (net.neoforged.gradle.vanilla) to use a version of Minecraft without the neoforge loader. + // And its provides the option to then use net.minecraft as the group, and one of; client, server or joined as the module name, plus the game version as version. + // For all intends and purposes: You can treat this dependency as if it is a normal library you would use. + implementation "net.neoforged:neoforge:${neo_version}" + implementation files("../Metropolis/build/libs/metropolis-1.0.0.jar") + // Example mod dependency with JEI + // The JEI API is declared for compile time use, while the full JEI artifact is used at runtime + // compileOnly "mezz.jei:jei-${mc_version}-common-api:${jei_version}" + // compileOnly "mezz.jei:jei-${mc_version}-forge-api:${jei_version}" + // runtimeOnly "mezz.jei:jei-${mc_version}-forge:${jei_version}" + + // Example mod dependency using a mod jar from ./libs with a flat dir repository + // This maps to ./libs/coolmod-${mc_version}-${coolmod_version}.jar + // The group id is ignored when searching -- in this case, it is "blank" + // implementation "blank:coolmod-${mc_version}:${coolmod_version}" + + // Example mod dependency using a file as dependency + // implementation files("libs/coolmod-${mc_version}-${coolmod_version}.jar") + + // Example project dependency using a sister or child project: + // implementation project(":myproject") + + // For more info: + // http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html + // http://www.gradle.org/docs/current/userguide/dependency_management.html } -// Example for how to get properties into the manifest for reading by the runtime.. -jar { - manifest { - attributes([ - "Specification-Title": "examplemod", - "Specification-Vendor": "examplemodsareus", - "Specification-Version": "1", // We are version 1 of ourselves - "Implementation-Title": project.name, - "Implementation-Version": "${version}", - "Implementation-Vendor" :"examplemodsareus", - "Implementation-Timestamp": new Date().format("yyyy-MM-dd'T'HH:mm:ssZ") - ]) +// This block of code expands all declared replace properties in the specified resource targets. +// A missing property will result in an error. Properties are expanded using ${} Groovy notation. +// When "copyIdeResources" is enabled, this will also run before the game launches in IDE environments. +// See https://docs.gradle.org/current/dsl/org.gradle.language.jvm.tasks.ProcessResources.html +tasks.withType(ProcessResources).configureEach { + var replaceProperties = [ + minecraft_version : minecraft_version, minecraft_version_range: minecraft_version_range, + neo_version : neo_version, neo_version_range: neo_version_range, + loader_version_range: loader_version_range, + mod_id : mod_id, mod_name: mod_name, mod_license: mod_license, mod_version: mod_version, + mod_authors : mod_authors, mod_description: mod_description, pack_format_number: pack_format_number, + ] + inputs.properties replaceProperties + + filesMatching(['META-INF/mods.toml', 'pack.mcmeta']) { + expand replaceProperties + [project: project] } } -// Example configuration to allow publishing using the maven-publish task -// This is the preferred method to reobfuscate your jar file -jar.finalizedBy('reobfJar') -// However if you are in a multi-project build, dev time needs unobfed jar files, so you can delay the obfuscation until publishing by doing -//publish.dependsOn('reobfJar') - +// Example configuration to allow publishing using the maven-publish plugin publishing { publications { - mavenJava(MavenPublication) { - artifact jar + register('mavenJava', MavenPublication) { + from components.java } } repositories { maven { - url "file:///${project.projectDir}/mcmodsrepo" + url "file://${project.projectDir}/repo" } } } -fancyGradle { - patches { - resources - coremods - codeChickenLib - asm - mergetool - } -} \ No newline at end of file +tasks.withType(JavaCompile).configureEach { + options.encoding = 'UTF-8' // Use the UTF-8 charset for Java compilation +} diff --git a/gradle.properties b/gradle.properties index 878bf1f7..44a52e20 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,61 @@ # Sets default memory used for gradle commands. Can be overridden by user or command line properties. # This is required to provide enough memory for the Minecraft decompilation process. org.gradle.jvmargs=-Xmx3G -org.gradle.daemon=false \ No newline at end of file +org.gradle.daemon=false +org.gradle.debug=false + +## Environment Properties + +# The Minecraft version must agree with the Neo version to get a valid artifact +minecraft_version=1.20.2 +# The Minecraft version range can use any release version of Minecraft as bounds. +# Snapshots, pre-releases, and release candidates are not guaranteed to sort properly +# as they do not follow standard versioning conventions. +minecraft_version_range=[1.20.2,1.21) +# The Neo version must agree with the Minecraft version to get a valid artifact +neo_version=20.2.3-beta +# The Neo version range can use any version of Neo as bounds or match the loader version range +neo_version_range=[20.2,) +# The loader version range can only use the major version of Neo/FML as bounds +loader_version_range=[1,) +# The mapping channel to use for mappings. +# The default set of supported mapping channels are ["official", "snapshot", "snapshot_nodoc", "stable", "stable_nodoc"]. +# Additional mapping channels can be registered through the "channelProviders" extension in a Gradle plugin. +# +# | Channel | Version | | +# |-----------|----------------------|--------------------------------------------------------------------------------| +# | official | MCVersion | Official field/method names from Mojang mapping files | +# | parchment | YYYY.MM.DD-MCVersion | Open community-sourced parameter names and javadocs layered on top of official | +# +# You must be aware of the Mojang license when using the 'official' or 'parchment' mappings. +# See more information here: https://github.com/neoforged/NeoForm/blob/main/Mojang.md +# +# Parchment is an unofficial project maintained by ParchmentMC, separate from Minecraft Forge. +# Additional setup is needed to use their mappings, see https://parchmentmc.org/docs/getting-started +mapping_channel=official +# The mapping version to query from the mapping channel. +# This must match the format required by the mapping channel. +mapping_version=1.20.2 + + +## Mod Properties + +# The unique mod identifier for the mod. Must be lowercase in English locale. Must fit the regex [a-z][a-z0-9_]{1,63} +# Must match the String constant located in the main mod class annotated with @Mod. +mod_id=furenikusroads +# The human-readable display name for the mod. +mod_name=Fureniku's Roads +# The license of the mod. Review your options at https://choosealicense.com/. All Rights Reserved is the default. +mod_license=All Rights Reserved +# The mod version. See https://semver.org/ +mod_version=1.0.0 +# The group ID for the mod. It is only important when publishing as an artifact to a Maven repository. +# This should match the base package used for the mod sources. +# See https://maven.apache.org/guides/mini/guide-naming-conventions.html +mod_group_id=com.fureniku.roads +# The authors of the mod. This is a simple text string that is used for display purposes in the mod list. +mod_authors=Fureniku +# The description of the mod. This is a simple multiline text string that is used for display purposes in the mod list. +mod_description=Add roads to your world! +# Pack version - this changes each minecraft release, in general. +pack_format_number=18 diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 7a3265ee94c0ab25cf079ac8ccdf87f41d455d42..943f0cbfa754578e88a3dae77fce6e3dea56edbf 100644 GIT binary patch literal 61574 zcmb6AV{~QRwml9f72CFLyJFk6ZKq;e729@pY}>YNR8p1vbMJH7ubt# zZR`2@zJD1Ad^Oa6Hk1{VlN1wGR-u;_dyt)+kddaNpM#U8qn@6eX;fldWZ6BspQIa= zoRXcQk)#ENJ`XiXJuK3q0$`Ap92QXrW00Yv7NOrc-8ljOOOIcj{J&cR{W`aIGXJ-` z`ez%Mf7qBi8JgIb{-35Oe>Zh^GIVe-b^5nULQhxRDZa)^4+98@`hUJe{J%R>|LYHA z4K3~Hjcp8_owGF{d~lZVKJ;kc48^OQ+`_2migWY?JqgW&))70RgSB6KY9+&wm<*8 z_{<;(c;5H|u}3{Y>y_<0Z59a)MIGK7wRMX0Nvo>feeJs+U?bt-++E8bu7 zh#_cwz0(4#RaT@xy14c7d<92q-Dd}Dt<*RS+$r0a^=LGCM{ny?rMFjhgxIG4>Hc~r zC$L?-FW0FZ((8@dsowXlQq}ja%DM{z&0kia*w7B*PQ`gLvPGS7M}$T&EPl8mew3In z0U$u}+bk?Vei{E$6dAYI8Tsze6A5wah?d(+fyP_5t4ytRXNktK&*JB!hRl07G62m_ zAt1nj(37{1p~L|m(Bsz3vE*usD`78QTgYIk zQ6BF14KLzsJTCqx&E!h>XP4)bya|{*G7&T$^hR0(bOWjUs2p0uw7xEjbz1FNSBCDb@^NIA z$qaq^0it^(#pFEmuGVS4&-r4(7HLmtT%_~Xhr-k8yp0`$N|y>#$Ao#zibzGi*UKzi zhaV#@e1{2@1Vn2iq}4J{1-ox;7K(-;Sk{3G2_EtV-D<)^Pk-G<6-vP{W}Yd>GLL zuOVrmN@KlD4f5sVMTs7c{ATcIGrv4@2umVI$r!xI8a?GN(R;?32n0NS(g@B8S00-=zzLn z%^Agl9eV(q&8UrK^~&$}{S(6-nEXnI8%|hoQ47P?I0Kd=woZ-pH==;jEg+QOfMSq~ zOu>&DkHsc{?o&M5`jyJBWbfoPBv9Y#70qvoHbZXOj*qRM(CQV=uX5KN+b>SQf-~a8 ziZg}@&XHHXkAUqr)Q{y`jNd7`1F8nm6}n}+_She>KO`VNlnu(&??!(i#$mKOpWpi1 z#WfWxi3L)bNRodhPM~~?!5{TrrBY_+nD?CIUupkwAPGz-P;QYc-DcUoCe`w(7)}|S zRvN)9ru8b)MoullmASwsgKQo1U6nsVAvo8iKnbaWydto4y?#-|kP^%e6m@L`88KyDrLH`=EDx*6>?r5~7Iv~I zr__%SximG(izLKSnbTlXa-ksH@R6rvBrBavt4)>o3$dgztLt4W=!3=O(*w7I+pHY2(P0QbTma+g#dXoD7N#?FaXNQ^I0*;jzvjM}%=+km`YtC%O#Alm| zqgORKSqk!#^~6whtLQASqiJ7*nq?38OJ3$u=Tp%Y`x^eYJtOqTzVkJ60b2t>TzdQ{I}!lEBxm}JSy7sy8DpDb zIqdT%PKf&Zy--T^c-;%mbDCxLrMWTVLW}c=DP2>Td74)-mLl|70)8hU??(2)I@Zyo z2i`q5oyA!!(2xV~gahuKl&L(@_3SP012#x(7P!1}6vNFFK5f*A1xF({JwxSFwA|TM z&1z}!*mZKcUA-v4QzLz&5wS$7=5{M@RAlx@RkJaA4nWVqsuuaW(eDh^LNPPkmM~Al zwxCe@*-^4!ky#iNv2NIIU$CS+UW%ziW0q@6HN3{eCYOUe;2P)C*M`Bt{~-mC%T3%# zEaf)lATO1;uF33x>Hr~YD0Ju*Syi!Jz+x3myVvU^-O>C*lFCKS&=Tuz@>&o?68aF& zBv<^ziPywPu#;WSlTkzdZ9`GWe7D8h<1-v0M*R@oYgS5jlPbgHcx)n2*+!+VcGlYh?;9Ngkg% z=MPD+`pXryN1T|%I7c?ZPLb3bqWr7 zU4bfG1y+?!bw)5Iq#8IqWN@G=Ru%Thxf)#=yL>^wZXSCC8we@>$hu=yrU;2=7>h;5 zvj_pYgKg2lKvNggl1ALnsz2IlcvL;q79buN5T3IhXuJvy@^crqWpB-5NOm{7UVfxmPJ>`?;Tn@qHzF+W!5W{8Z&ZAnDOquw6r4$bv*jM#5lc%3v|c~^ zdqo4LuxzkKhK4Q+JTK8tR_|i6O(x#N2N0Fy5)!_trK&cn9odQu#Vlh1K~7q|rE z61#!ZPZ+G&Y7hqmY;`{XeDbQexC2@oFWY)Nzg@lL3GeEVRxWQlx@0?Zt`PcP0iq@6 zLgc)p&s$;*K_;q0L(mQ8mKqOJSrq$aQYO-Hbssf3P=wC6CvTVHudzJH-Jgm&foBSy zx0=qu$w477lIHk);XhaUR!R-tQOZ;tjLXFH6;%0)8^IAc*MO>Q;J={We(0OHaogG0 zE_C@bXic&m?F7slFAB~x|n#>a^@u8lu;=!sqE*?vq zu4`(x!Jb4F#&3+jQ|ygldPjyYn#uCjNWR)%M3(L!?3C`miKT;~iv_)dll>Q6b+I&c zrlB04k&>mSYLR7-k{Od+lARt~3}Bv!LWY4>igJl!L5@;V21H6dNHIGr+qV551e@yL z`*SdKGPE^yF?FJ|`#L)RQ?LJ;8+={+|Cl<$*ZF@j^?$H%V;jqVqt#2B0yVr}Nry5R z5D?S9n+qB_yEqvdy9nFc+8WxK$XME$3ftSceLb+L(_id5MMc*hSrC;E1SaZYow%jh zPgo#1PKjE+1QB`Of|aNmX?}3TP;y6~0iN}TKi3b+yvGk;)X&i3mTnf9M zuv3qvhErosfZ%Pb-Q>|BEm5(j-RV6Zf^$icM=sC-5^6MnAvcE9xzH@FwnDeG0YU{J zi~Fq?=bi0;Ir=hfOJu8PxC)qjYW~cv^+74Hs#GmU%Cw6?3LUUHh|Yab`spoqh8F@_ zm4bCyiXPx-Cp4!JpI~w!ShPfJOXsy>f*|$@P8L8(oeh#~w z-2a4IOeckn6}_TQ+rgl_gLArS3|Ml(i<`*Lqv6rWh$(Z5ycTYD#Z*&-5mpa}a_zHt z6E`Ty-^L9RK-M*mN5AasoBhc|XWZ7=YRQSvG)3$v zgr&U_X`Ny0)IOZtX}e$wNUzTpD%iF7Rgf?nWoG2J@PsS-qK4OD!kJ?UfO+1|F*|Bo z1KU`qDA^;$0*4mUJ#{EPOm7)t#EdX=Yx1R2T&xlzzThfRC7eq@pX&%MO&2AZVO%zw zS;A{HtJiL=rfXDigS=NcWL-s>Rbv|=)7eDoOVnVI>DI_8x>{E>msC$kXsS}z?R6*x zi(yO`$WN)_F1$=18cbA^5|f`pZA+9DG_Zu8uW?rA9IxUXx^QCAp3Gk1MSdq zBZv;_$W>*-zLL)F>Vn`}ti1k!%6{Q=g!g1J*`KONL#)M{ZC*%QzsNRaL|uJcGB7jD zTbUe%T(_x`UtlM!Ntp&-qu!v|mPZGcJw$mdnanY3Uo>5{oiFOjDr!ZznKz}iWT#x& z?*#;H$`M0VC|a~1u_<(}WD>ogx(EvF6A6S8l0%9U<( zH||OBbh8Tnzz*#bV8&$d#AZNF$xF9F2{_B`^(zWNC}af(V~J+EZAbeC2%hjKz3V1C zj#%d%Gf(uyQ@0Y6CcP^CWkq`n+YR^W0`_qkDw333O<0FoO9()vP^!tZ{`0zsNQx~E zb&BcBU>GTP2svE2Tmd;~73mj!_*V8uL?ZLbx}{^l9+yvR5fas+w&0EpA?_g?i9@A$j*?LnmctPDQG|zJ`=EF}Vx8aMD^LrtMvpNIR*|RHA`ctK*sbG= zjN7Q)(|dGpC}$+nt~bupuKSyaiU}Ws{?Tha@$q}cJ;tvH>+MuPih+B4d$Zbq9$Y*U z)iA(-dK?Ov@uCDq48Zm%%t5uw1GrnxDm7*ITGCEF!2UjA`BqPRiUR`yNq^zz|A3wU zG(8DAnY-GW+PR2&7@In{Sla(XnMz5Rk^*5u4UvCiDQs@hvZXoiziv{6*i?fihVI|( zPrY8SOcOIh9-AzyJ*wF4hq%ojB&Abrf;4kX@^-p$mmhr}xxn#fVU?ydmD=21&S)s*v*^3E96(K1}J$6bi8pyUr-IU)p zcwa$&EAF$0Aj?4OYPcOwb-#qB=kCEDIV8%^0oa567_u6`9+XRhKaBup z2gwj*m#(}=5m24fBB#9cC?A$4CCBj7kanaYM&v754(b%Vl!gg&N)ZN_gO0mv(jM0# z>FC|FHi=FGlEt6Hk6H3!Yc|7+q{&t%(>3n#>#yx@*aS+bw)(2!WK#M0AUD~wID>yG z?&{p66jLvP1;!T7^^*_9F322wJB*O%TY2oek=sA%AUQT75VQ_iY9`H;ZNKFQELpZd z$~M`wm^Y>lZ8+F0_WCJ0T2td`bM+b`)h3YOV%&@o{C#|t&7haQfq#uJJP;81|2e+$ z|K#e~YTE87s+e0zCE2X$df`o$`8tQhmO?nqO?lOuTJ%GDv&-m_kP9X<5GCo1=?+LY z?!O^AUrRb~3F!k=H7Aae5W0V1{KlgH379eAPTwq=2+MlNcJ6NM+4ztXFTwI)g+)&Q7G4H%KH_(}1rq%+eIJ*3$?WwnZxPZ;EC=@`QS@|-I zyl+NYh&G>k%}GL}1;ap8buvF>x^yfR*d+4Vkg7S!aQ++_oNx6hLz6kKWi>pjWGO5k zlUZ45MbA=v(xf>Oeqhg8ctl56y{;uDG?A9Ga5aEzZB80BW6vo2Bz&O-}WAq>(PaV;*SX0=xXgI_SJ< zYR&5HyeY%IW}I>yKu^?W2$~S!pw?)wd4(#6;V|dVoa}13Oiz5Hs6zA zgICc;aoUt$>AjDmr0nCzeCReTuvdD1{NzD1wr*q@QqVW*Wi1zn;Yw1dSwLvTUwg#7 zpp~Czra7U~nSZZTjieZxiu~=}!xgV68(!UmQz@#w9#$0Vf@y%!{uN~w^~U_d_Aa&r zt2l>)H8-+gA;3xBk?ZV2Cq!L71;-tb%7A0FWziYwMT|#s_Ze_B>orZQWqDOZuT{|@ zX04D%y&8u@>bur&*<2??1KnaA7M%%gXV@C3YjipS4|cQH68OSYxC`P#ncvtB%gnEI z%fxRuH=d{L70?vHMi>~_lhJ@MC^u#H66=tx?8{HG;G2j$9@}ZDYUuTetwpvuqy}vW)kDmj^a|A%z(xs7yY2mU0#X2$un&MCirr|7 z%m?8+9aekm0x5hvBQ2J+>XeAdel$cy>J<6R3}*O^j{ObSk_Ucv$8a3_WPTd5I4HRT z(PKP5!{l*{lk_19@&{5C>TRV8_D~v*StN~Pm*(qRP+`1N12y{#w_fsXrtSt={0hJw zQ(PyWgA;;tBBDql#^2J(pnuv;fPn(H>^d<6BlI%00ylJZ?Evkh%=j2n+|VqTM~EUh zTx|IY)W;3{%x(O{X|$PS&x0?z#S2q-kW&G}7#D?p7!Q4V&NtA_DbF~v?cz6_l+t8e zoh1`dk;P-%$m(Ud?wnoZn0R=Ka$`tnZ|yQ-FN!?!9Wmb^b(R!s#b)oj9hs3$p%XX9DgQcZJE7B_dz0OEF6C zx|%jlqj0WG5K4`cVw!19doNY+(;SrR_txAlXxf#C`uz5H6#0D>SzG*t9!Fn|^8Z8; z1w$uiQzufUzvPCHXhGma>+O327SitsB1?Rn6|^F198AOx}! zfXg22Lm0x%=gRvXXx%WU2&R!p_{_1H^R`+fRO2LT%;He@yiekCz3%coJ=8+Xbc$mN zJ;J7*ED|yKWDK3CrD?v#VFj|l-cTgtn&lL`@;sMYaM1;d)VUHa1KSB5(I54sBErYp z>~4Jz41?Vt{`o7T`j=Se{-kgJBJG^MTJ}hT00H%U)pY-dy!M|6$v+-d(CkZH5wmo1 zc2RaU`p3_IJ^hf{g&c|^;)k3zXC0kF1>rUljSxd}Af$!@@R1fJWa4g5vF?S?8rg=Z z4_I!$dap>3l+o|fyYy(sX}f@Br4~%&&#Z~bEca!nMKV zgQSCVC!zw^j<61!7#T!RxC6KdoMNONcM5^Q;<#~K!Q?-#6SE16F*dZ;qv=`5 z(kF|n!QIVd*6BqRR8b8H>d~N@ab+1+{3dDVPVAo>{mAB#m&jX{usKkCg^a9Fef`tR z?M79j7hH*;iC$XM)#IVm&tUoDv!(#f=XsTA$)(ZE37!iu3Gkih5~^Vlx#<(M25gr@ zOkSw4{l}6xI(b0Gy#ywglot$GnF)P<FQt~9ge1>qp8Q^k;_Dm1X@Tc^{CwYb4v_ld}k5I$&u}avIDQ-D(_EP zhgdc{)5r_iTFiZ;Q)5Uq=U73lW%uYN=JLo#OS;B0B=;j>APk?|!t{f3grv0nv}Z%` zM%XJk^#R69iNm&*^0SV0s9&>cl1BroIw*t3R0()^ldAsq)kWcI=>~4!6fM#0!K%TS ziZH=H%7-f=#-2G_XmF$~Wl~Um%^9%AeNSk)*`RDl##y+s)$V`oDlnK@{y+#LNUJp1^(e89sed@BB z^W)sHm;A^9*RgQ;f(~MHK~bJRvzezWGr#@jYAlXIrCk_iiUfC_FBWyvKj2mBF=FI;9|?0_~=E<)qnjLg9k*Qd!_ zl}VuSJB%#M>`iZm*1U^SP1}rkkI};91IRpZw%Hb$tKmr6&H5~m?A7?+uFOSnf)j14 zJCYLOYdaRu>zO%5d+VeXa-Ai7{7Z}iTn%yyz7hsmo7E|{ z@+g9cBcI-MT~2f@WrY0dpaC=v{*lDPBDX}OXtJ|niu$xyit;tyX5N&3pgmCxq>7TP zcOb9%(TyvOSxtw%Y2+O&jg39&YuOtgzn`uk{INC}^Na_-V;63b#+*@NOBnU{lG5TS zbC+N-qt)u26lggGPcdrTn@m+m>bcrh?sG4b(BrtdIKq3W<%?WuQtEW0Z)#?c_Lzqj*DlZ zVUpEV3~mG#DN$I#JJp3xc8`9ex)1%Il7xKwrpJt)qtpq}DXqI=5~~N}N?0g*YwETZ z(NKJO5kzh?Os`BQ7HYaTl>sXVr!b8>(Wd&PU*3ivSn{;q`|@n*J~-3tbm;4WK>j3&}AEZ*`_!gJ3F4w~4{{PyLZklDqWo|X}D zbZU_{2E6^VTCg#+6yJt{QUhu}uMITs@sRwH0z5OqM>taO^(_+w1c ztQ?gvVPj<_F_=(ISaB~qML59HT;#c9x(;0vkCi2#Zp`;_r@+8QOV1Ey2RWm6{*J&9 zG(Dt$zF^7qYpo9Ne}ce5re^j|rvDo*DQ&1Be#Fvo#?m4mfFrNZb1#D4f`Lf(t_Fib zwxL3lx(Zp(XVRjo_ocElY#yS$LHb6yl;9;Ycm1|5y_praEcGUZxLhS%7?b&es2skI z9l!O)b%D=cXBa@v9;64f^Q9IV$xOkl;%cG6WLQ`_a7I`woHbEX&?6NJ9Yn&z+#^#! zc8;5=jt~Unn7!cQa$=a7xSp}zuz#Lc#Q3-e7*i`Xk5tx_+^M~!DlyBOwVEq3c(?`@ zZ_3qlTN{eHOwvNTCLOHjwg0%niFYm({LEfAieI+k;U2&uTD4J;Zg#s`k?lxyJN<$mK6>j?J4eOM@T*o?&l@LFG$Gs5f4R*p*V1RkTdCfv9KUfa< z{k;#JfA3XA5NQJziGd%DchDR*Dkld&t;6i9e2t7{hQPIG_uDXN1q0T;IFCmCcua-e z`o#=uS2_en206(TuB4g-!#=rziBTs%(-b1N%(Bl}ea#xKK9zzZGCo@<*i1ZoETjeC zJ)ll{$mpX7Eldxnjb1&cB6S=7v@EDCsmIOBWc$p^W*;C0i^Hc{q(_iaWtE{0qbLjxWlqBe%Y|A z>I|4)(5mx3VtwRBrano|P))JWybOHUyOY67zRst259tx;l(hbY@%Z`v8Pz^0Sw$?= zwSd^HLyL+$l&R+TDnbV_u+h{Z>n$)PMf*YGQ}1Df@Nr{#Gr+@|gKlnv?`s1rm^$1+ zic`WeKSH?{+E}0^#T<&@P;dFf;P5zCbuCOijADb}n^{k=>mBehDD6PtCrn5ZBhh2L zjF$TbzvnwT#AzGEG_Rg>W1NS{PxmL9Mf69*?YDeB*pK!&2PQ7!u6eJEHk5e(H~cnG zZQ?X_rtws!;Tod88j=aMaylLNJbgDoyzlBv0g{2VYRXObL=pn!n8+s1s2uTwtZc

YH!Z*ZaR%>WTVy8-(^h5J^1%NZ$@&_ZQ)3AeHlhL~=X9=fKPzFbZ;~cS**=W-LF1 z5F82SZ zG8QZAet|10U*jK*GVOA(iULStsUDMjhT$g5MRIc4b8)5q_a?ma-G+@xyNDk{pR*YH zjCXynm-fV`*;}%3=+zMj**wlCo6a{}*?;`*j%fU`t+3Korws%dsCXAANKkmVby*eJ z6`2%GB{+&`g2;snG`LM9S~>#^G|nZ|JMnWLgSmJ4!kB->uAEF0sVn6km@s=#_=d)y zzld%;gJY>ypQuE z!wgqqTSPxaUPoG%FQ()1hz(VHN@5sfnE68of>9BgGsQP|9$7j zGqN{nxZx4CD6ICwmXSv6&RD<-etQmbyTHIXn!Q+0{18=!p))>To8df$nCjycnW07Q zsma_}$tY#Xc&?#OK}-N`wPm)+2|&)9=9>YOXQYfaCI*cV1=TUl5({a@1wn#V?y0Yn z(3;3-@(QF|0PA}|w4hBWQbTItc$(^snj$36kz{pOx*f`l7V8`rZK}82pPRuy zxwE=~MlCwOLRC`y%q8SMh>3BUCjxLa;v{pFSdAc7m*7!}dtH`MuMLB)QC4B^Uh2_? zApl6z_VHU}=MAA9*g4v-P=7~3?Lu#ig)cRe90>@B?>})@X*+v&yT6FvUsO=p#n8p{ zFA6xNarPy0qJDO1BPBYk4~~LP0ykPV ztoz$i+QC%Ch%t}|i^(Rb9?$(@ijUc@w=3F1AM}OgFo1b89KzF6qJO~W52U_;R_MsB zfAC29BNUXpl!w&!dT^Zq<__Hr#w6q%qS1CJ#5Wrb*)2P1%h*DmZ?br)*)~$^TExX1 zL&{>xnM*sh=@IY)i?u5@;;k6+MLjx%m(qwDF3?K3p>-4c2fe(cIpKq#Lc~;#I#Wwz zywZ!^&|9#G7PM6tpgwA@3ev@Ev_w`ZZRs#VS4}<^>tfP*(uqLL65uSi9H!Gqd59C&=LSDo{;#@Isg3caF1X+4T}sL2B+Q zK*kO0?4F7%8mx3di$B~b&*t7y|{x%2BUg4kLFXt`FK;Vi(FIJ+!H zW;mjBrfZdNT>&dDfc4m$^f@k)mum{DioeYYJ|XKQynXl-IDs~1c(`w{*ih0-y_=t$ zaMDwAz>^CC;p*Iw+Hm}%6$GN49<(rembdFvb!ZyayLoqR*KBLc^OIA*t8CXur+_e0 z3`|y|!T>7+jdny7x@JHtV0CP1jI^)9){!s#{C>BcNc5#*hioZ>OfDv)&PAM!PTjS+ zy1gRZirf>YoGpgprd?M1k<;=SShCMn406J>>iRVnw9QxsR|_j5U{Ixr;X5n$ih+-=X0fo(Oga zB=uer9jc=mYY=tV-tAe@_d-{aj`oYS%CP@V3m6Y{)mZ5}b1wV<9{~$`qR9 zEzXo|ok?1fS?zneLA@_C(BAjE_Bv7Dl2s?=_?E9zO5R^TBg8Be~fpG?$9I; zDWLH9R9##?>ISN8s2^wj3B?qJxrSSlC6YB}Yee{D3Ex8@QFLZ&zPx-?0>;Cafcb-! zlGLr)wisd=C(F#4-0@~P-C&s%C}GvBhb^tTiL4Y_dsv@O;S56@?@t<)AXpqHx9V;3 zgB!NXwp`=%h9!L9dBn6R0M<~;(g*nvI`A@&K!B`CU3^FpRWvRi@Iom>LK!hEh8VjX z_dSw5nh-f#zIUDkKMq|BL+IO}HYJjMo=#_srx8cRAbu9bvr&WxggWvxbS_Ix|B}DE zk!*;&k#1BcinaD-w#E+PR_k8I_YOYNkoxw5!g&3WKx4{_Y6T&EV>NrnN9W*@OH+niSC0nd z#x*dm=f2Zm?6qhY3}Kurxl@}d(~ z<}?Mw+>%y3T{!i3d1%ig*`oIYK|Vi@8Z~*vxY%Od-N0+xqtJ*KGrqo*9GQ14WluUn z+%c+og=f0s6Mcf%r1Be#e}&>1n!!ZxnWZ`7@F9ymfVkuFL;m6M5t%6OrnK#*lofS{ z=2;WPobvGCu{(gy8|Mn(9}NV99Feps6r*6s&bg(5aNw$eE ztbYsrm0yS`UIJ?Kv-EpZT#76g76*hVNg)L#Hr7Q@L4sqHI;+q5P&H{GBo1$PYkr@z zFeVdcS?N1klRoBt4>fMnygNrDL!3e)k3`TXoa3#F#0SFP(Xx^cc)#e2+&z9F=6{qk z%33-*f6=+W@baq){!d_;ouVthV1PREX^ykCjD|%WUMnNA2GbA#329aEihLk~0!!}k z)SIEXz(;0lemIO{|JdO{6d|-9LePs~$}6vZ>`xYCD(ODG;OuwOe3jeN;|G$~ml%r* z%{@<9qDf8Vsw581v9y+)I4&te!6ZDJMYrQ*g4_xj!~pUu#er`@_bJ34Ioez)^055M$)LfC|i*2*3E zLB<`5*H#&~R*VLYlNMCXl~=9%o0IYJ$bY+|m-0OJ-}6c@3m<~C;;S~#@j-p?DBdr<><3Y92rW-kc2C$zhqwyq09;dc5;BAR#PPpZxqo-@e_s9*O`?w5 zMnLUs(2c-zw9Pl!2c#+9lFpmTR>P;SA#Id;+fo|g{*n&gLi}7`K)(=tcK|?qR4qNT z%aEsSCL0j9DN$j8g(a+{Z-qPMG&O)H0Y9!c*d?aN0tC&GqC+`%(IFY$ll~!_%<2pX zuD`w_l)*LTG%Qq3ZSDE)#dt-xp<+n=3&lPPzo}r2u~>f8)mbcdN6*r)_AaTYq%Scv zEdwzZw&6Ls8S~RTvMEfX{t@L4PtDi{o;|LyG>rc~Um3;x)rOOGL^Bmp0$TbvPgnwE zJEmZ>ktIfiJzdW5i{OSWZuQWd13tz#czek~&*?iZkVlLkgxyiy^M~|JH(?IB-*o6% zZT8+svJzcVjcE0UEkL_5$kNmdrkOl3-`eO#TwpTnj?xB}AlV2`ks_Ua9(sJ+ok|%b z=2n2rgF}hvVRHJLA@9TK4h#pLzw?A8u31&qbr~KA9;CS7aRf$^f1BZ5fsH2W8z}FU zC}Yq76IR%%g|4aNF9BLx6!^RMhv|JYtoZW&!7uOskGSGL+}_>L$@Jg2Vzugq-NJW7 zzD$7QK7cftU1z*Fxd@}wcK$n6mje}=C|W)tm?*V<<{;?8V9hdoi2NRm#~v^#bhwlc z5J5{cSRAUztxc6NH>Nwm4yR{(T>0x9%%VeU&<&n6^vFvZ{>V3RYJ_kC9zN(M(` zp?1PHN>f!-aLgvsbIp*oTZv4yWsXM2Q=C}>t7V(iX*N8{aoWphUJ^(n3k`pncUt&` ze+sYjo)>>=I?>X}1B*ZrxYu`|WD0J&RIb~ zPA_~u)?&`}JPwc1tu=OlKlJ3f!9HXa)KMb|2%^~;)fL>ZtycHQg`j1Vd^nu^XexYkcae@su zOhxk8ws&Eid_KAm_<}65zbgGNzwshR#yv&rQ8Ae<9;S^S}Dsk zubzo?l{0koX8~q*{uA%)wqy*Vqh4>_Os7PPh-maB1|eT-4 zK>*v3q}TBk1QlOF!113XOn(Kzzb5o4Dz@?q3aEb9%X5m{xV6yT{;*rnLCoI~BO&SM zXf=CHLI>kaSsRP2B{z_MgbD;R_yLnd>^1g`l;uXBw7|)+Q_<_rO!!VaU-O+j`u%zO z1>-N8OlHDJlAqi2#z@2yM|Dsc$(nc>%ZpuR&>}r(i^+qO+sKfg(Ggj9vL%hB6 zJ$8an-DbmKBK6u6oG7&-c0&QD#?JuDYKvL5pWXG{ztpq3BWF)e|7aF-(91xvKt047 zvR{G@KVKz$0qPNXK*gt*%qL-boz-*E;7LJXSyj3f$7;%5wj)2p8gvX}9o_u}A*Q|7 z)hjs?k`8EOxv1zahjg2PQDz5pYF3*Cr{%iUW3J+JU3P+l?n%CwV;`noa#3l@vd#6N zc#KD2J;5(Wd1BP)`!IM;L|(d9m*L8QP|M7W#S7SUF3O$GFnWvSZOwC_Aq~5!=1X+s z6;_M++j0F|x;HU6kufX-Ciy|du;T%2@hASD9(Z)OSVMsJg+=7SNTAjV<8MYN-zX5U zVp~|N&{|#Z)c6p?BEBBexg4Q((kcFwE`_U>ZQotiVrS-BAHKQLr87lpmwMCF_Co1M z`tQI{{7xotiN%Q~q{=Mj5*$!{aE4vi6aE$cyHJC@VvmemE4l_v1`b{)H4v7=l5+lm^ ztGs>1gnN(Vl+%VuwB+|4{bvdhCBRxGj3ady^ zLxL@AIA>h@eP|H41@b}u4R`s4yf9a2K!wGcGkzUe?!21Dk)%N6l+#MP&}B0%1Ar*~ zE^88}(mff~iKMPaF+UEp5xn(gavK(^9pvsUQT8V;v!iJt|7@&w+_va`(s_57#t?i6 zh$p!4?BzS9fZm+ui`276|I307lA-rKW$-y^lK#=>N|<-#?WPPNs86Iugsa&n{x%*2 zzL_%$#TmshCw&Yo$Ol?^|hy{=LYEUb|bMMY`n@#(~oegs-nF){0ppwee|b{ca)OXzS~01a%cg&^ zp;}mI0ir3zapNB)5%nF>Sd~gR1dBI!tDL z&m24z9sE%CEv*SZh1PT6+O`%|SG>x74(!d!2xNOt#C5@I6MnY%ij6rK3Y+%d7tr3&<^4XU-Npx{^`_e z9$-|@$t`}A`UqS&T?cd@-+-#V7n7tiZU!)tD8cFo4Sz=u65?f#7Yj}MDFu#RH_GUQ z{_-pKVEMAQ7ljrJ5Wxg4*0;h~vPUI+Ce(?={CTI&(RyX&GVY4XHs>Asxcp%B+Y9rK z5L$q94t+r3=M*~seA3BO$<0%^iaEb2K=c7((dIW$ggxdvnC$_gq~UWy?wljgA0Dwd`ZsyqOC>)UCn-qU5@~!f znAWKSZeKRaq#L$3W21fDCMXS;$X(C*YgL7zi8E|grQg%Jq8>YTqC#2~ys%Wnxu&;ZG<`uZ1L<53jf2yxYR3f0>a;%=$SYI@zUE*g7f)a{QH^<3F?%({Gg)yx^zsdJ3^J2 z#(!C3qmwx77*3#3asBA(jsL`86|OLB)j?`0hQIh>v;c2A@|$Yg>*f+iMatg8w#SmM z<;Y?!$L--h9vH+DL|Wr3lnfggMk*kyGH^8P48or4m%K^H-v~`cBteWvnN9port02u zF;120HE2WUDi@8?&Oha6$sB20(XPd3LhaT~dRR2_+)INDTPUQ9(-370t6a!rLKHkIA`#d-#WUcqK%pMcTs6iS2nD?hln+F-cQPUtTz2bZ zq+K`wtc1;ex_iz9?S4)>Fkb~bj0^VV?|`qe7W02H)BiibE9=_N8=(5hQK7;(`v7E5Mi3o? z>J_)L`z(m(27_&+89P?DU|6f9J*~Ih#6FWawk`HU1bPWfdF?02aY!YSo_!v$`&W znzH~kY)ll^F07=UNo|h;ZG2aJ<5W~o7?*${(XZ9zP0tTCg5h-dNPIM=*x@KO>a|Bk zO13Cbnbn7+_Kj=EEMJh4{DW<))H!3)vcn?_%WgRy=FpIkVW>NuV`knP`VjT78dqzT z>~ay~f!F?`key$EWbp$+w$8gR1RHR}>wA8|l9rl7jsT+>sQLqs{aITUW{US&p{Y)O zRojdm|7yoA_U+`FkQkS?$4$uf&S52kOuUaJT9lP@LEqjKDM)iqp9aKNlkpMyJ76eb zAa%9G{YUTXa4c|UE>?CCv(x1X3ebjXuL&9Dun1WTlw@Wltn3zTareM)uOKs$5>0tR zDA~&tM~J~-YXA<)&H(ud)JyFm+d<97d8WBr+H?6Jn&^Ib0<{6ov- ze@q`#Y%KpD?(k{if5-M(fO3PpK{Wjqh)7h+ojH ztb=h&vmy0tn$eA8_368TlF^DKg>BeFtU%3|k~3lZAp(C$&Qjo9lR<#rK{nVn$)r*y z#58_+t=UJm7tp|@#7}6M*o;vn7wM?8Srtc z3ZFlKRDYc^HqI!O9Z*OZZ8yo-3ie9i8C%KDYCfE?`rjrf(b&xBXub!54yaZY2hFi2w2asEOiO8;Hru4~KsqQZMrs+OhO8WMX zFN0=EvME`WfQ85bmsnPFp|RU;GP^&Ik#HV(iR1B}8apb9W9)Nv#LwpED~%w67o;r! zVzm@zGjsl)loBy6p>F(G+#*b|7BzZbV#E0Pi`02uAC}D%6d12TzOD19-9bhZZT*GS zqY|zxCTWn+8*JlL3QH&eLZ}incJzgX>>i1dhff}DJ=qL{d?yv@k33UhC!}#hC#31H zOTNv5e*ozksj`4q5H+75O70w4PoA3B5Ea*iGSqA=v)}LifPOuD$ss*^W}=9kq4qqd z6dqHmy_IGzq?j;UzFJ*gI5)6qLqdUL;G&E*;lnAS+ZV1nO%OdoXqw(I+*2-nuWjwM-<|XD541^5&!u2 z1XflFJp(`^D|ZUECbaoqT5$#MJ=c23KYpBjGknPZ7boYRxpuaO`!D6C_Al?T$<47T zFd@QT%860pwLnUwer$BspTO9l1H`fknMR|GC?@1Wn`HscOe4mf{KbVio zahne0&hJd0UL#{Xyz=&h@oc>E4r*T|PHuNtK6D279q!2amh%r#@HjaN_LT4j>{&2I z?07K#*aaZ?lNT6<8o85cjZoT~?=J&Xd35I%JJom{P=jj?HQ5yfvIR8bd~#7P^m%B-szS{v<)7i?#at=WA+}?r zwMlc-iZv$GT};AP4k2nL70=Q-(+L_CYUN{V?dnvG-Av+%)JxfwF4-r^Z$BTwbT!Jh zG0YXK4e8t`3~){5Qf6U(Ha0WKCKl^zlqhqHj~F}DoPV#yHqLu+ZWlv2zH29J6}4amZ3+-WZkR7(m{qEG%%57G!Yf&!Gu~FDeSYmNEkhi5nw@#6=Bt& zOKT!UWVY-FFyq1u2c~BJ4F`39K7Vw!1U;aKZw)2U8hAb&7ho|FyEyP~D<31{_L>RrCU>eEk-0)TBt5sS5?;NwAdRzRj5qRSD?J6 ze9ueq%TA*pgwYflmo`=FnGj2r_u2!HkhE5ZbR_Xf=F2QW@QTLD5n4h(?xrbOwNp5` zXMEtm`m52{0^27@=9VLt&GI;nR9S)p(4e+bAO=e4E;qprIhhclMO&7^ThphY9HEko z#WfDFKKCcf%Bi^umN({q(avHrnTyPH{o=sXBOIltHE?Q65y_At<9DsN*xWP|Q=<|R z{JfV?B5dM9gsXTN%%j;xCp{UuHuYF;5=k|>Q=;q zU<3AEYawUG;=%!Igjp!FIAtJvoo!*J^+!oT%VI4{P=XlbYZl;Dc467Nr*3j zJtyn|g{onj!_vl)yv)Xv#}(r)@25OHW#|eN&q7_S4i2xPA<*uY9vU_R7f};uqRgVb zM%<_N3ys%M;#TU_tQa#6I1<+7Bc+f%mqHQ}A@(y^+Up5Q*W~bvS9(21FGQRCosvIX zhmsjD^OyOpae*TKs=O?(_YFjSkO`=CJIb*yJ)Pts1egl@dX6-YI1qb?AqGtIOir&u zyn>qxbJhhJi9SjK+$knTBy-A)$@EfzOj~@>s$M$|cT5V!#+|X`aLR_gGYmNuLMVH4 z(K_Tn;i+fR28M~qv4XWqRg~+18Xb?!sQ=Dy)oRa)Jkl{?pa?66h$YxD)C{F%EfZt| z^qWFB2S_M=Ryrj$a?D<|>-Qa5Y6RzJ$6Yp`FOy6p2lZSjk%$9guVsv$OOT*6V$%TH zMO}a=JR(1*u`MN8jTn|OD!84_h${A)_eFRoH7WTCCue9X73nbD282V`VzTH$ckVaC zalu%ek#pHxAx=0migDNXwcfbK3TwB7@T7wx2 zGV7rS+2g9eIT9>uWfao+lW2Qi9L^EBu#IZSYl0Q~A^KYbQKwNU(YO4Xa1XH_>ml1v z#qS;P!3Lt%2|U^=++T`A!;V-!I%upi?<#h~h!X`p7eP!{+2{7DM0$yxi9gBfm^W?M zD1c)%I7N>CG6250NW54T%HoCo^ud#`;flZg_4ciWuj4a884oWUYV(#VW`zO1T~m(_ zkayymAJI)NU9_0b6tX)GU+pQ3K9x=pZ-&{?07oeb1R7T4RjYYbfG^>3Y>=?dryJq& zw9VpqkvgVB?&aK}4@m78NQhTqZeF=zUtBkJoz8;6LO<4>wP7{UPEs1tP69;v919I5 zzCqXUhfi~FoK5niVU~hQqAksPsD@_|nwH4avOw67#fb@Z5_OS=$eP%*TrPU%HG<-A z`9)Y3*SAdfiqNTJ2eKj8B;ntdqa@U46)B+odlH)jW;U{A*0sg@z>-?;nN}I=z3nEE@Bf3kh1B zdqT{TWJvb#AT&01hNsBz8v(OwBJSu#9}A6Y!lv|`J#Z3uVK1G`0$J&OH{R?3YVfk% z9P3HGpo<1uy~VRCAe&|c4L!SR{~^0*TbVtqej3ARx(Okl5c>m~|H9ZwKVHc_tCe$hsqA`l&h7qPP5xBgtwu!; zzQyUD<6J!M5fsV-9P?C9P49qnXR+iXt#G_AS2N<6!HZ(eS`|-ndb|y!(0Y({2 z4aF~GO8bHM7s+wnhPz>sa!Z%|!qWk*DGr)azB}j6bLe#FQXV4aO>Eo7{v`0x=%5SY zy&{kY+VLXni6pPJYG_Sa*9hLy-s$79$zAhkF)r?9&?UaNGmY9F$uf>iJ~u@Q;sydU zQaN7B>4B*V;rtl^^pa3nFh$q*c&sx^Um}I)Z)R&oLEoWi3;Yv6za?;7m?fZe>#_mS z-EGInS^#UHdOzCaMRSLh7Mr0}&)WCuw$4&K^lx{;O+?Q1p5PD8znQ~srGrygJ?b~Q5hIPt?Wf2)N?&Dae4%GRcRKL(a-2koctrcvxSslXn-k9cYS|<-KJ#+$Wo>}yKKh*3Q zHsK(4-Jv!9R3*FKmN$Z#^aZcACGrlGjOe^#Z&DfPyS-1bT9OIX~-I-5lN6Y>M}dvivbs2BcbPcaNH%25-xMkT$>*soDJ) z27;};8oCYHSLF0VawZFn8^H;hIN=J457@eoI6s2P87QN6O`q8coa;PN$mRZ>2Vv+! zQj1}Tvp8?>yyd_U>dnhx%q~k*JR`HO=43mB?~xKAW9Z}Vh2b0<(T89%eZ z57kGs@{NUHM>|!+QtqI@vE8hp`IIGc`A9Y{p?c;@a!zJFmdaCJ;JmzOJ8)B1x{yZp zi!U{Wh-h+u6vj`2F+(F6gTv*cRX7MR z9@?>is`MSS1L#?PaW6BWEd#EX4+O1x6WdU~LZaQ^Quow~ybz*aAu{ZMrQ;yQ8g)-qh>x z^}@eFu1u7+3C0|hRMD1{MEn(JOmJ|wYHqGyn*xt-Y~J3j@nY56i)sgNjS4n@Q&p@@^>HQjzNaw#C9=TbwzDtiMr2a^}bX< zZE%HU^|CnS`WYVcs}D)+fP#bW0+Q#l#JC+!`OlhffKUCN8M-*CqS;VQX`If78$as0 z=$@^NFcDpTh~45heE63=x5nmP@4hBaFn(rmTY2Yj{S&k;{4W!0Nu9O5pK30}oxM7{ z>l4cKb~9D?N#u_AleD<~8XD@23sY^rt&fN%Q0L=Ti2bV#px`RhM$}h*Yg-iC4A+rI zV~@yY7!1}-@onsZ)@0tUM23cN-rXrZYWF#!V-&>vds8rP+w0t{?~Q zT^LN*lW==+_ifPb+-yMh9JhfcYiXo_zWa`ObRP9_En3P))Qyu0qPJ3*hiFSu>Vt-j z<*HWbiP2#BK@nt<g|pe3 zfBKS@i;ISkorx@cOIx9}p^d8Gis%$)))%ByVYU^KG#eE+j1p;^(Y1ndHnV&YuQZm~ zj;f+mf>0ru!N`)_p@Ls<& z`t+JDx7}R568Q|8`4A}G@t8Wc?SOXunyW5C-AWoB@P>r}uwFY*=?=!K@J(!t@#xOuPXhFS@FTf6-7|%k;nw2%Z+iHl219Ho1!bv(Ee0|ao!Rs%Jl0@3suGrOsb_@VM;(xzrf^Cbd;CK3b%a|ih-fG)`Rd00O74=sQYW~Ve z#fl!*(fo~SIQ5-Sl?1@o7-E*|SK|hoVEKzxeg!$KmQLSTN=5N`rYeh$AH&x}JMR+5dq|~FUy&Oj%QIy;HNr;V*7cQC+ka>LAwdU)?ubI@W z={eg%A&7D**SIj$cu=CN%vN^(_JeIHMUyejCrO%C3MhOcVL~Niu;8WYoN}YVhb+=- zR}M3p|H0`E2Id99y#03r`8$s0t*iD>`^7EPm1~guC)L~uW#O~>I85Q3Nj8(sG<@T| zL^e~XQt9O0AXQ^zkMdgzk5bdYttP~nf-<831zulL>>ghTFii$lg3^80t8Gb*x1w5| zN{kZuv`^8Fj=t(T*46M=S$6xY@0~AvWaGOYOBTl0?}KTkplmGn-*P(X=o-v^48OY} zi11-+Y}y)fdy_tI;*W(>#qzvgQZ52t!nrGsJEy!c86TKIN(n|!&ucCduG$XaIapI z{(Z9gZANsI={A=5Aorgq2H25Dd}H5@-5=j=s{f`%^>6b5qkm_2|3g>r-^amf=B_xV zXg*>aqxXZ6=VUI4$})ypDMy$IKkgJ;V>077T9o#OhpFhKtHP_4mnjS5QCgGe<;~Xe zt<2ZhL7?JL6Mi|U_w?;?@4OD@=4EB2op_s)N-ehm#7`zSU#7itU$#%^ncqjc`9HCG zfj;O1T+*oTkzRi-6NN`oS3w3$7ZB37L>PcN$C$L^qqHfiYO4_>0_qCw0r@FEMj=>}}%q_`d#pUT;c?=gI zqTGpiY4Z;Q(B~#hXIVBFbi#dO=cOdmOqD0|An?7nMdrm2^C>yw*dQ=#lf8)@DvXK; z$MXp}QZgnE!&L73x0LZX_bCdD4lRY$$^?9dt1RwCng{lIpbb%Ej%yOh{@76yEyb}K zXZy%^656Sk3BLKbalcc>Dt5iDzo^tj2!wnDL(X;urJfpkWrab!frFSC6Q7m zuoqN!(t=L&+Ov&~9mz(yEB`MK%RPXS>26Ww5(F;aZ zR@tPAw~=q2ioOiynxgBqE&3-R-@6yCo0*mE;#I^c!=g~HyyjGA6}|<(0EseKDTM4w z94YnCO^VYIUY@}x8kr;;El-cFHVO<$6;-UdmUB|J8R*Wf$a37gVgYT|w5^KkYe=(i zMkA$%7;^a*$V+}e%S~&*^^O;AX9NLt@cIPc*v!lKZ)(zahAsUj%PJot19ErFU=Uk( z9Hw;Lb`V+BzVpMu;TGB9}y~ff)^mbEmF?g{{7_0SR zPgp*n)l{?>7-Ji;eWG{ln$)Bro+UJAQo6W2-23d@SI=HiFV3hR2OUcAq_9q~ye)o@ zq8WZvhg`H(?1AUZ-NM%_Cuj}eb{4wOCnqs^E1G9U4HKjqaw@4dsXWP#$wx^}XPZ0F zywsJ0aJHA>AHc^q#nhQjD3!KDFT6FaDioJ#HsZU7Wo?8WH19TJ%OMDz$XH5J4Cjdt z@crE;#JNG`&1H8ekB(R4?QiiZ55kztsx}pQti}gG0&8`dP=d(8aCLOExd*Sw^WL`Q zHvZ(u`5A58h?+G&GVsA;pQNNPFI)U@O`#~RjaG(6Y<=gKT2?1 z*pCUGU)f??VlyP64P@uT`qh?L03ZQyLOBn?EKwH+IG{XvTh5|NldaSV_n~DK&F1aa znq~C_lCQHMfW6xib%a2m!h&%J)aXb{%-0!HCcW|kzaoSwPMhJ6$KL|F~Sx(tctbwfkgV;#KZlEmJN5&l5XF9eD;Kqb<| z>os)CqC^qF8$be|v;)LY{Gh@c0?a??k7M7&9CH+-B)t&T$xeSzCs30sf8O-+I#rq} z&kZj5&i>UyK9lDjI<*TLZ3USVwwpiE5x8<|{Db z3`HX3+Tt>1hg?+uY{^wC$|Tb7ud@3*Ub?=2xgztgv6OOz0G z-4VRyIChHfegUak^-)-P;VZY@FT64#xyo=+jG<48n2%wcx`ze6yd51(!NclmN=$*kY=#uu#>=yAU-u4I9Bt0n_6ta?&9jN+tM_5_3RH);I zxTN4n$EhvKH%TmOh5mq|?Cx$m>$Ed?H7hUEiRW^lnW+}ZoN#;}aAuy_n189qe1Juk z6;QeZ!gdMAEx4Na;{O*j$3F3e?FLAYuJ2iuMbWf8Ub6(nDo?zI5VNhN@ib6Yw_4P)GY^0M7TJwat z2S*2AcP}e0tibZ@k&htTD&yxT9QRG0CEq$;obfgV^&6YVX9B9|VJf`1aS_#Xk>DFo zwhk?~)>XlP5(u~UW0hP7dWZuCuN4QM24Td&j^7~)WQ6YeCg)njG*ri}tTcG-NxX}p zNB>kcxd5ipW@tN3=6r@Jgm#rgrK*dXA!gxy6fAvP7$)8)Vc~PPQ|`( zPy|bG1sUz958-!zW^j(8ILV%QC@x`~PDFczboZqWjvSU<9O3!TQ&xYi%?Y0AiVBLV z%R?#1L#G&xw*RZPsrwF?)B5+MSM(b$L;GLnRsSU!_$N;6pD97~H}`c>0F`&E_FCNE z_)Q*EA1%mOp`z>+h&aqlLKUD9*w?D>stDeBRdR*AS9)u;ABm7w1}eE|>YH>YtMyBR z^e%rPeZzBx_hj?zhJVNRM_PX(O9N#^ngmIJ0W@A)PRUV7#2D!#3vyd}ADuLry;jdn zSsTsHfQ@6`lH z^GWQf?ANJS>bBO-_obBL$Apvakhr1e5}l3axEgcNWRN$4S6ByH+viK#CnC1|6Xqj& z*_i7cullAJKy9GBAkIxUIzsmN=M|(4*WfBhePPHp?55xfF}yjeBld7+A7cQPX8PE-|Pe_xqboE;2AJb5ifrEfr86k&F0+y!r`-urW}OXSkfz2;E``UTrGSt^B)7&#RSLTQitk=mmPKUKP`uGQ4)vp_^$^U`2Jjq zeul!ptEpa%aJo0S(504oXPGdWM7dAA9=o9s4-{>z*pP zJ31L#|L?YR;^%+>YRJrLrFC=5vc;0{hcxDKF z!ntmgO>rVDaGmRpMI7-+mv(j~;s_LARvcpkXj|{GHu1c<1 zKI)#7RE~Dizu1lG>p-PcY2jX#)!oJlBA$LHnTUWX=lu``E)vhf9h4tYL-juZ`e|Kb z=F?C;Ou)h^cxB;M-8@$ZSH0jkVD>x-XS$ePV1vlU8&CG))4NgU(=XFH=Jb1IB7dBysS+94}Y>sjS(&YcJwhn zifzA|g$D5rW89vkJSv()I+Th4R&C$g-!CB30xkh%aw4po3$@DK2fW>}enE2YPt&{C~j}`>RYICK{ zYAPfZ&%`R}u6MYo<>d`^O#Q(dM{3>T^%J{Vu;lr#Utg4x9!Z9J%iXs(j+dn&SS1_2 zzxGtMnu^`d%K4Xq4Ms-ErG3_7n?c(3T!?rvyW=G<7_XKDv*ox`zN*^BVwUoqh{D7o zdEiq;Zp6}k_mCIAVTUcMdH|fo%L#qkN19X$%b1#Oko|u4!M*oRqdBa3z98{H#g=d%5X&D#NXhLh`nUjxi8@3oo(AgeItdJ zIrt9ieHI1GiwHiU4Cba-*nK@eHI4uj^LVmVIntU@Gwf^t6i3{;SfLMCs#L;s;P4s5oqd^}8Uil!NssP>?!K z07nAH>819U=^4H6l-Dhy`^Q6DV^}B9^aR0B%4AH=D&+dowt9N}zCK+xHnXb-tsKaV6kjf;Wdp#uIZ_QsI4ralE>MWP@%_5eN=MApv92( z09SSB#%eE|2atm9P~X2W2F-zJD+#{q9@1}L2fF|Lzu@1CAJq*d6gA8*Jjb;<+Asih zctE|7hdr5&b-hRhVe}PN z$0G{~;pz1yhkbwuLkfbvnX=<7?b(1PhxAmefKn$VS6Sv)t-UypwhEs3?*E=(pc%Dlul1V~OdWvdf z{WBX?lhfO_g$$X~hm^Bhl@U0t<|beYgT)2L_C(z@B^-63c9Ak2*Aa)iOMylfl|qyNQdO#yoJ?m2FOkhZ1ou@G%+^m z#!#(gTv8nx^34(HddDp|dcFl@&eh+&FFJc@^FL3fV2?u&9Wt|Yp3&MS)e+ez0g~Ys zY7d0n^)+ z0@K^GJTLN?XAV(0F6e>o>HCGJU5(8WsSFErs0FsO=O1u$=T~xx7HYK{7C>-IGB8U+ z&G^Vy>uY}Bq7HX-X`U^nNh+11GjG-)N1l_tG<^4Tu4+4X9KO9IrdH+eXGk|G6Tc(U zU~g7BoO!{elBk>;uN-`rGQP-7qIf9lQhj-=_~0Qyszu>s$s0FrJatSylv!ol&{29~ z7S4fv&-UBOF&cR@xpuW*{x9$R;c_ALt?{+dI&HoBKG-!EY{yE=>aWhlmNhHlCXc(B zuA-zI*?Z9ohO$i8s*SEIHzVvyEF$65b5m=H*fQ)hi*rX8 zKlPqjD*Ix1tPzfR_Z3bO^n32iQ#vhjWDwj6g@4S?_2GyjiGdZZRs3MLM zTfl0_Dsn=CvL`zRey?yi)&4TpF&skAi|)+`N-wrB_%I_Osi~)9`X+`Z^03whrnP7f z?T`*4Id`J@1x#T~L(h5^5z%Cok~U|&g&GpCF%E4sB#i3xAe>6>24%Kuu=)=HRS;Pu2wghgTFa zHqm#sa{7-~{w_039gH0vrOm&KPMiPmuPRpAQTm5fkPTZVT&9eKuu%Riu%-oMQl2X6 z{Bnx`3ro^Z$}rVzvUZsk9T)pX|4%sY+j0i)If_z-9;a^vr1YN>=D(I7PX){_JTJ&T zPS6~9iDT{TFPn}%H=QS!Tc$I9FPgI<0R7?Mu`{FTP~rRq(0ITmP1yrJdy|m;nWmDelF-V^y7*UEVvbxNv0sHR?Q=PVYRuZinR(;RjVAG zm&qlSYvaiIbVEqBwyDaJ8LVmiCi{6ESF4pO?U&7pk&CASm6vuB;n-RauPFzdr!C%1 z8pjdSUts7EbA4Kg(01zK!ZU<-|d zU&jWswHnSLIg&mTR;!=-=~z(#!UsXt%NJR|^teM8kG@8Qg_0^6Jqfn&(eENtP8D7K zvnll3Y%7yh1Ai~0+l6dAG|lEGe~Oa+3hO>K2}{ulO?Vf*R{o2feaRBolc;SJg)HXHn4qtzomq^EM zb)JygZ=_4@I_T=Xu$_;!Q`pv6l)4E%bV%37)RAba{sa4T*cs%C!zK?T8(cPTqE`bJ zrBWY`04q&+On`qH^KrAQT7SD2j@C>aH7E8=9U*VZPN-(x>2a++w7R$!sHH+wlze2X)<<=zC_JJvTdY7h&Jum?s?VRV)JU`T;vjdi7N-V)_QCBzI zcWqZT{RI4(lYU~W0N}tdOY@dYO8Rx5d7DF1Ba5*U7l$_Er$cO)R4dV zE#ss{Dl`s#!*MdLfGP>?q2@GSNboVP!9ZcHBZhQZ>TJ85(=-_i4jdX5A-|^UT}~W{CO^Lt4r;<1ps@s|K7A z90@6x1583&fobrg9-@p&`Gh+*&61N!$v2He2fi9pk9W2?6|)ng7Y~pJT3=g~DjTcYWjY9gtZ5hk*1Qf!y2$ot@0St$@r8|9^GMWEE>iB~etL zXYxn#Rvc`DV&y93@U$Z91md1qVtGY*M(=uCc}@STDOry@58JNx`bUH}EIb(n6I}i? zSYJOZ2>B6&Payu+@V!gxb;)_zh-{~qtgVwQ-V;vK7e0^Ag_$3+g+{xSVudVOY_p-R z$sXhpFSk7je2lk5)7Y2;Z847E1<;5?;z(I)55YFtgF!J;NT|eVi}q^*2sM}zyM{+s zD0phl+J>k1E7cZEGmP?1-3~RE;R$q(I5}m?MX8xi?6@0f#rD8Cjkpv1GmL5HVbTnM zAQ&4-rbkpdaoLp~?ZoW>^+t0t1t%GO2B;ZD4?{qeP+qsjOm{1%!oy1OfmX?_POQJ4 zGwvChl|uE;{zGoO?9B_m{c8p(-;_yq?b^jA({}iQG35?7H7`1cm`BGyfuq7z1s~T| zm88HpS{z54T{jxC=>kZ=Z#8G@uya3tt0$xST5V$-V<;6MA66VFg}`LLU8L=q3DmkU z)P^X8pg`ndMY*>gr{6~ur^Q@Z8LNQf*6wkP03K<|M*+cDc#XKZ`Z0$1FkI-IDRw#| za52W4MyHlDABs~AQu7Duebjgc}02W;1jgBx&I@TMDXU`LJutQ?@r%1z`W zlB8G-U$q37G1ob>Er8j0$q@OU3IwG#8HsvJM#)j=Y%~#zY`jaG%5;!(kY3*a^t>(qf6>I zpAJpF%;FQ?BhDSsVG27tQEG*CmWhl4)Ngp%}D?U0!nb1=)1M==^B)^$8Li$boCY$S4U;G^A!?24nSYHra{< zSNapX#G+0BTac|xh`w&}K!);$sA3ay%^a2f?+^*9Ev8ONilfwYUaDTMvhqz2Ue2<81uuB71 zAl|VEOy%GQ7zxAJ&;V^h6HOrAzF=q!s4x)Mdlmp{WWI=gZRk(;4)saI0cpWJw$2TJcyc2hWG=|v^1CAkKYp;s_QmU?A;Yj!VQ1m-ugzkaJA(wQ_ zah00eSuJg<5Nd#OWWE?|GrmWr+{-PpE_Dbqs&2`BI=<%ggbwK^8VcGiwC-6x`x|ZY z1&{Vj*XIF2$-2Lx?KC3UNRT z&=j7p1B(akO5G)SjxXOjEzujDS{s?%o*k{Ntu4*X z;2D|UsC@9Wwk5%)wzTrR`qJX!c1zDZXG>-Q<3Z)7@=8Y?HAlj_ZgbvOJ4hPlcH#Iw z!M-f`OSHF~R5U`p(3*JY=kgBZ{Gk;0;bqEu%A;P6uvlZ0;BAry`VUoN(*M9NJ z%CU2_w<0(mSOqG;LS4@`p(3*Z7jC|Khm5-i>FcYr87};_J9)XKlE}(|HSfnA(I3)I zfxNYZhs#E6k5W(z9TI2)qGY&++K@Z?bd;H%B@^!>e2Wi@gLk)wC)T93gTxdRPU7uh z)`$-m(G2I5AuK52aj!fMJR|d^H?0X~+4xSpw zqNRtq5r8hic*{eAwUT<=gI5uXLg)o5mg4XnO^T+Rd+{l)<$Aqp{+RxhNYuX^45W0k z5$t%+7R;dX$`s6CYQYcims>5bNt+k&l_t%C9D-6sYVm%Y8SRC#kgRh*%2kqMg2ewb zp_X*$NFU%#$PuQ@ULP>h9Xw`cJ>J-ma8lU`n*9PcWFpE%x0^}(DvOVe2jz@ z0^2QOi0~t!ov?jI{#bw~`Aj5ymQW@eruRg`ZNJ5IT5_5AHbQ?|C>_7rwREf2e2x&L zlV8xdOkp_*+wdaqE?6bmdrFfaGepcj=0AI<+c=Tg^WB9BhFx?SvwoVdTEm&zPy@Vs zPs2mVPiw1n_h?Xi6!+w)ypsFXXuM>gIY(J+1N6r!sJ{+r1%BzRF20!D;bN>L^?O8n z(5|x2p^Q6X`!pm3!MMFET5`nJXn>tK`fFAj5Eo&t6;F>TU_4G93YGyzvF2_fB& zfE8(dq?R@@&Wh8~%G~rDt1+e)96O5)by_%;G~Zv`TpmZ)vY@BkAan*zEy(s`*{-@U z;$WPjoNx~m?`6Z;^O=K3SBL3LrIxfU{&g)edERkPQZK!mVYU-zHuV0ENDq^e<-?^U zGyRcrPDZZw*wxK(1SPUR$0t0Wc^*u_gb*>qEOP102FX|`^U%n*7z=wM@pOmYa6Z=-)T%!{tAFELY2`dTl3$&w! z7sgKXCTU(h3+8)H#Qov19%85Xo+oQh?C-q0zaM_X2twSCz|j_u!te3J2zLV#Ut_q7 zl+5LGx#{I`(9FzE$0==km|?%m?g~HB#BSz2vHynf1x14mEX^~pej*dhzD|6gMgOJ_ z8F_<>&OIz;`NSqrel?HI-K(|ypxwz}NtX!CF3&T(CkuYOnKS&%lUSU44KsgS`L>!w zl{MoT4`t=+p8>@88)Ea%*hOIkxt#b4RfrwRMr91UF_Ic~kV;|+dRW0a8Vl725+gsvtHr5 z>?3fai&9NmU|3;-nAu8OB|<(-2Kfub4MX&1i}dDd=R~Dk=U-Vr=@&lfEIYU~xtHHO z4TKt=wze`qm=69lD)sOOkZ;$9=0B#*g@X6xPM-%zG*rCXkN%eRDEUp$gAaEd29t&T zRTAg##Sk+TAYaa(LyTD__zL3?Z+45^+1o}(&f<~lQ*-z7`Um^>v@PKqOunTE#OyKFY^q&L^fqZgplhXQ>P3?BMaq6%rO5hfsiln7TppJ z>nG9|2MmL|lShn4-yz0qH>+o;Fe`V!-e*R0M|q~31B=EC$(bQZTW^!PrHCPE4i|>e zyAFK!@P}u>@hqwf%<#uv*jen5xEL|v!VQEK!F`SIz_H8emZfn#Hg}}@SuqPv+gJ@- zf3a`DT_Q#)DnHv+XVXX`H}At zmQwW2K`t@(k%ULJrBe6ln9|W8+3B*pJ#-^9P?21%mOk(W1{t#h?|j0ZrRi_dwGh#*eBd?fy(UBXWqAt5I@L3=@QdaiK`B_NQ$ zLXzm{0#6zh2^M zfu>HFK^d`&v|x&xxa&M|pr))A4)gFw<_X@eN`B1X%C^a{$39fq`(mOG!~22h)DYut z(?MONP1>xp4@dIN^rxtMp&a^yeGc8gmcajyuXhgaB;3}vFCQFa!pTDht9ld9`&ql`2&(dwNl5FZqedD^BP zf5K1`(_&i7x-&rD=^zkFD87idQrk(Y?E;-j^DMCht`A8Qa5J-46@G_*Y3J+&l{$}*QCATEc9zuzaQGHR8B;y*>eWuv)E##?Ba3w= zZ|v(l{EB`XzD#|ncVm#Wy?#Nzm3bS1!FJ70e{DGe$EgNDg7<_ic^mJSh&Xc|aTwCrTv;XkW~UlS&G%KyLklCn}F^i(YP(f z{cqH%5q9ND_S;l$HRP$Q@`D=F*_1$CXIA5X@|V&Vir$NQ$vCx!b&LGCR<-2y)m%HI zxeeyQIjiWcf4uD9+FP+EJ`&$oJ%$R(#w~GjqP|aTQj#d(;l#rq$vcM&Y4ZQ_i{Kpx z?k2BtoKb?+1-EVmG^ne-W%8+y?i#J5N5g8f^qpH5(ZZp7$u+?I9GB+&MREX?TmVV$ zA}Ps=^CkD^sD9N;tNtN!a>@D^&940cTETu*DUZlJO*z7BBy`Rl;$-D@8$6PFq@tz0 z=_2JMmq-JRSvx`;!XM|kO!|DENI-5ke8WR*Zj#vy#Nf1;mW-{6>_sCO8?sVWOKDM| zR(iaZrBrzlRatUzp_Y|2nOXnY2G%WLGXCo9*)th_RnXvXV=q;WNAimI98!A54|$&OCCG%$4m{%E&o?S|Qx<4K~YGmM1CS!vZAzLN%d znbZsw6ql=XkiwSbNofNeA42q8#LH6Rk(u@z172O#6K>Sb{#`t#GUgpd{2;D(9@I_9 zwsY(6Go7RmOThs2rM3|Z#Vbs}CHPLgBK6gE8;XkJQDx~p5wJ?XkE(0<^hwnt6;$~R zXCAzMfK@`myzdkkpv*ZbarVwCi&{-O#rswrb-#x4zRkxfVCq;mJLic|*C92T?0CYv z)FCqY$xA(QZmggPocZqQj0Rc?=Afna`@fpSn)&nSqtI}?;cLphqEF3F9^OZfW9@HDunc^2{_H)1D9(O}4e zJMi_4(&$CD{Jf5&u|7#Iq*F~)l!8pAzNrX^<&wfEu~}Ipslzx=g^ff2?B9SnV=!$ zv&K0`hMN6BVIusHNX-lr`#K?OG1S*S4rCQaI3ea(!gCl7YjxJ3YQ)7-b&N*D8k><*x|47s3; z4f~WTWuk|Qd*d*DICV}Vb0YSzFZp5|%s4}@jvtTfm&`|(jNpajge zD}@CMaUBs+b?Yu6&c#18=TxzMCLE76#Dy=DLiq_a_knQX4Uxk$&@3ORoBFK_&a>`QKaWu^)Hzrqz{5)?h3B_`4AOn{fG9k zEwnjQb>8XRq!k?rmCd6E**1cY#b9yczN4mD%GLCeRk}{TmR1*!dTNzY;(f!B0yVuk zSjRyf;9i@2>bdGSZJ=FNrnxOExb075;gB z*7&YR|4ZraFO#45-4h%8z8U}jdt?83AmU3)Ln#m3GT!@hYdzqqDrkeHW zU#R`Z8RHq996HR=mC}SRGtsz07;-C-!n*ALpwwBe~loM)YqMH)Um$sH0RbTTzxFd)h1=-w5Yl3k|3nQ zZG>=_yZ7Lsn=b8_MZI+LSHLGYSSCc?ht~7cv#39>Moz6AS}5 zus?xge0PGdFd2FpXgIscWOyG}oxATgd$yl0Ugf_&J_vwt`)XWx!p*gE_cWU(tUTnz zQS}!bMxJyi3KWh^W9m zxLcy``V@EfJzYjK@$e7Yk=q!kL8cd3E-zpc*wwvGJ62O!V;N zFG7Y?sJ+^a%H1;rdDZRu2JmGn6<&ERKes=Pwx)GG-nt73&M78+>SOy!^#=gvLB)2H zjv!J0O`-zft|0Jv$3k5wScY)XB+9leZgR5%3~HtZA=bCg7=Dn+F}>2lf;!*1+vBtf z9jhmqlH=t5XW{0MC7Y~O7jaju&2`p!ZDLGlgnd~%+EJ%A#pIByi-+EOmoLVoK&ow8 zTDjB%0hxhiRv+O3c2*y00rMA=)s|3-ev7emcbT43#izku7dvaDXy1IMV0ahjB9yzi z9C9fN+I2Mzt1*{`a6B?+PdWHiJ5fH}rb2t>q)~3RfCxmyK^y5jN7Pn(9DFh61GO%p zuBErj=m|bDn_L8SINU)Z&@K*AgGz+SUYO_RUeJt=E0M+eh&kqK;%Y1psBNU<4-s9# ziHFr7QP6Ew=-2CdfA#Bf|EsctH;<&=Hsd>)Ma8NvHB$cpVY@}TV!UN}3?9o@CS5kw zx%nXo%y|r5`YOWoZi#hE(3+rNKLZ2g5^(%Z99nSVt$2TeU2zD%$Q(=$Y;%@QyT5Rq zRI#b><}zztscQaTiFbsu2+%O~sd`L+oKYy5nkF4Co6p88i0pmJN9In`zg*Q;&u#uK zj#>lsuWWH14-2iG z&4w{6QN8h$(MWPNu84w1m{Qg0I31ra?jdyea*I~Xk(+A5bz{x%7+IL}vFDUI-Rf{! zE^&Dau9QxA2~)M98b42(D6Q}2PUum0%g>B?JS?o~VrP+Go2&c-7hIf7(@o1*7k$zS zy@o5MEe8DoX$Ie(%SZByyf9Xf9n8xkoX}s6RiO1sg*kAV^6EAAz$>*x^OmIy!*?1k zG+UQ|aIWDEl%)#;k{>-(w9UE7oKM#2AvQud}sby=D7$l6{$}SE8O9WgHM_+ zJ?tHeu@Pi93{AuwVF^)N(B~0?#V*6z;zY)wtgqF7Nx7?YQdD^s+f8T0_;mFV9r<+C z4^NloIJIir%}ptEpDk!z`l+B z5h(k$0bO$VV(i$E@(ngVG^YAjdieHWwMrz6DvNGM*ydHGU#ZG{HG5YGTT&SIqub@) z=U)hR_)Q@#!jck+V`$X5itp9&PGiENo(yT5>4erS<|Rh#mbCA^aO2rw+~zR&2N6XP z5qAf^((HYO2QQQu2j9fSF)#rRAwpbp+o=X>au|J5^|S@(vqun`du;1_h-jxJU-%v| z_#Q!izX;$3%BBE8Exh3ojXC?$Rr6>dqXlxIGF?_uY^Z#INySnWam=5dV`v_un`=G*{f$51(G`PfGDBJNJfg1NRT2&6E^sG%z8wZyv|Yuj z%#)h~7jGEI^U&-1KvyxIbHt2%zb|fa(H0~Qwk7ED&KqA~VpFtQETD^AmmBo54RUhi z=^Xv>^3L^O8~HO`J_!mg4l1g?lLNL$*oc}}QDeh!w@;zex zHglJ-w>6cqx3_lvZ_R#`^19smw-*WwsavG~LZUP@suUGz;~@Cj9E@nbfdH{iqCg>! zD7hy1?>dr^ynOw|2(VHK-*e%fvU0AoKxsmReM7Uy{qqUVvrYc5Z#FK&Z*XwMNJ$TJ zW1T**U1Vfvq1411ol1R?nE)y%NpR?4lVjqZL`J}EWT0m7r>U{2BYRVVzAQamN#wiT zu*A`FGaD=fz|{ahqurK^jCapFS^2e>!6hSQTh87V=OjzVZ}ShM3vHX+5IY{f^_uFp zIpKBGq)ildb_?#fzJWy)MLn#ov|SvVOA&2|y;{s;Ym4#as?M^K}L_g zDkd`3GR+CuH0_$s*Lm6j)6@N;L7Vo@R=W3~a<#VxAmM&W33LiEioyyVpsrtMBbON+ zX^#%iKHM;ueExK@|t3fX`R+vO(C zucU#Xf>OjSH0Kd%521=Sz%5Y!O(ug(?gRH@K>IUayFU~ntx`Wdm27dB-2s@)J=jf_ zjI-o;hKnjQ|Lg~GKX!*OHB69xvuDU zuG-H48~inKa)^r539a{F)OS`*4GShX>%BR)LU~a-|6+sx&FYsrS1}_b)xSNOzH|Kv zq>+1-cSc0`99EsUz(XWcoRO)|shn>TqKoQBHE)w8i8K`*Xy6(ls%WN_#d}YC^)NJ; zzl8!Zduz^Gg8*f0tCWnLEzw6k5Fv!QWC1x4)3r}+x~@#O8_)0>lP-@3(kFwLl%%Mz(TpATVnL5Pl2Gahw45QXI~>Hrw))CcEs@PP?}4^zkM$ z@(?H6^`Jl?A=(&Ue;W0`*a8&fR7vde@^q^AzX^H#gd~96`Ay^_A%?;?@q@t7l7iGn zWms#2J|To4;o1?3g3L!K_chdtmbEg~>U>$5{WO@Ip~YE&H($(^X6y_OBuNHkd0wu= z4rXGy#-@vZ?>M<_gpE8+W-{#ZJeAfgE#yIDSS?M?K(oY@A|FaS3P;OjMNOG% zGWyZWS(}LJCPaGi9=5b%sq$i!6x@o(G}wwfpI5|yJe24d_V}cT1{^(Qe$KEMZ;>I@ zuE6ee%FLgem>CKEN8SeY)fpK#>*lGcH~71)T4p|9jWT;vwM@N!gL}nCW=Oi6+_>K2 zl4sWXeM1U}RETA~hp=o3tCk+?Zwl#*QA>Wwd|FlUF0)U;rEGPD1s0Syluo zfW9L(F>q9li8YKwKXZrp*t)N9E;?&Hdbm-AZp2BcDTHO6q=tzVkZsozEIXjIH`tm} zo2-UleNm*Lj7zgvhBph_|1IggkSuW~S(9ueZEfao8BuzqlF(a+pRivTv(Zb zXFaHwcuovdM#d+!rjV7F<^VW&@}=5|xj!OUF)s0zh|8yzC)7!9CZB+TLnycoGBsDF z$u&j={5c(4A$iik;x6_S96Krw8--+9pGY+*oSVTIuq;$z8*)W8B~rMX_(U6uM}!Gc`T;WfEKwI84%)-e7j}>NA(O_)3Vn9 zjXxY1Fnx3Fx%CFpUHVu0xjvxgZv}F9@!vC!lD|05#ew3eJ}@!V&urwRKH`1f{0e^o zWvM1S@NbI6pHdzm33pza_q;#?s%J*$4>10uYi4l%5qi|j5qh+D=oqSJR=7QwkQh>>c$|uJ#Z@lK6PMHs@ zyvnnoOSkGQkYz#g>||xN&1fV)aJb*y--Y`UQV~lt!u8yTUG59ns1l7u>CX2F>9fl; zB)zH3z^XHmSU{F_jlvESvaNL&nj^;j)29~1LcTYw>(6}>bt0hiRooqm0@qTj%A&P9 zKmexPwyXG@Rs1i+8>AJ;=?&7RHC7Mn%nO>@+l?Qj~+lD376O2rp)>tlVHn8MKq zwop1KRLhUjZ|+6ecGIAftSPT*3i94=QzYCi_ay+5J&O(%^IsqZ!$w-^bmd7ds$^!q z;AkC;5mTAU>l0S$6NSyG30Ej?KPq@#T)^x#x?@U~fl2m$Ffk)s6u|iPr!)-j0BlA7p3E*A|My8S#KH;8i-IQq7Q*F4*ZVPe<{^SWz_ zr?!6cS+@|C#-P~d#=W1n7acn8_pg#W-lcyf+41zwR+BU6`jUkP^`*wgX)FxEaXzoi z8)?FE*97Yqz|b@fR1(r{QD363t260rQ(F||dt9^xABi+{C*_HL9Zt5T;fq|#*b}=K zo5yj_cZB(oydMAL&X(W6yKf>ui?!%(HhiHJ83EA|#k0hQ!gpVd( zVSqRR&ado+v4BP9mzamKtSsV<|0U-Fe2HP5{{x&K>NxWLIT+D^7md{%>D1Z-5lwS~ z6Q<1`Hfc+0G{4-84o-6dr@)>5;oTt|P6jt9%a43^wGCslQtONH)7QXJEYa!c~39 zWJpTL@bMYhtem1de>svLvOUa*DL7+Ah0(_~2|ng`!Z!qiN}6xL;F}<%M8qWv&52-Y zG*1A&ZKlp~{UFV%Hb_*Re({93f7W*jJZMV-Yn|<+l3SPN+%GuPl=+tSZxxr%?6SEc zntb0~hcK691wwxlQz_jSY+V_h+0o`X!Vm{;qYK$n?6ib1G{q>a%UejzOfk6q<=8oM z6Izkn2%JA2E)aRZbel(M#gI45(Fo^O=F=W26RA8Qb0X;m(IPD{^Wd|Q;#jgBg}e( z+zY(c!4nxoIWAE4H*_ReTm|0crMv8#RLSDwAv<+|fsaqT)3}g=|0_CJgxKZo7MhUiYc8Dy7B~kohCQ$O6~l#1*#v4iWZ=7AoNuXkkVVrnARx?ZW^4-%1I8 zEdG1%?@|KmyQ}tploH>5@&8Cp{`)CxVQOss&x|Z7@gGL3=tCVNDG!N9`&;N$gu^MDk|`rRm=lhnXAJ5v1T)WTz)qvz|Dw zR?{}W4VB(O6#9%o9Z^kFZZV*PDTAWqkQ8TH!rti8QIcR&>zcg3qG}&A( zwH^K8=`1C1lRfhrX{IvNn9R9!$UMC%k(;;VH%`S0h_on|Gh6qDSH&#}*m-u{;p~WB zF$_I~xx!RxVrxNQdr@3T>{F#^D{@N9OYC9LsV62F_Z1KYQ5yk*C5WQ4&q}Kz(I{9UWWf?LIcCZicB1EO_FUH*a9QKS(4IR%#D5DTi_@M}Q_-4)J4d zz@!vR0}5MPAOK(#uL+$7XOcP$5SS#*EK9Rt6XN%}HB7@`8S^gNRk!HLv(CvCjX4o= z>9scPwWbE!F8T=@x9^;s-OF2!eO(!gL9$-AmzUiDnu&QS4If5ea2T070n1-IyNhck z9$J8b!he3@q5qB-cQ;5ymVIXXn46kK0sqKZV+3s3^mac=3~BrCW})WNrrRs1KtMmg zLzwXYC?@_H#s3W4D$W0rh%WL|G<1$$uYdptPbxy0ke!c%v#x9I=2?S)YVkg1X$W^cB!i>B{e9wXlm8AcCT8|verIZQngj>{%W%~W0J%N`Q($h z^u3}p|HyHk?(ls7?R`a&&-q@R<94fI30;ImG3jARzFz<(!K|o9@lqB@Va+on`X2G) zegCM8$vvJ$kUwXlM8df|r^GQXr~2q*Zepf&Mc%kgWGTf;=Wx%7e{&KId-{G}r22lI zmq%L6Y-M*T$xf8 z#kWOBg2TF1cwcd{<$B)AZmD%h-a6>j z%I=|#ir#iEkj3t4UhHy)cRB$3-K12y!qH^1Z%g*-t;RK z6%Mjb*?GGROZSHSRVY1Ip=U_V%(GNfjnUkhk>q%&h!xjFvh69W8Mzg)7?UM=8VHS* zx|)6Ew!>6-`!L+uS+f0xLQC^brt2b(8Y9|5j=2pxHHlbdSN*J1pz(#O%z*W-5WSf# z6EW5Nh&r<;$<3o1b013?U$#Y!jXY)*QiGFt|M58sO45TBGPiHl4PKqZhJ|VRX=AOO zsFz-=3$~g#t4Ji9c;GFS9L~}~bzgCqnYuJ-60AMDdN7HZt8_$~Of{oXaD3HVn9zkH z`>#xQNe=YpWTq_LcOoy}R`L<_4il7w4)QH4rl?AUk%?fH##I>`1_mnp&=$-%SutYT zs}sSNMWo;(a&D()U$~PG0MvZ#1lmsF&^P4l_oN#_NORD-GSmR{h_NbJ^ZdY#R9#qW zKAC%V*?y~}V1Zh#d|-z1Z8sy5A+}*cOq$xk@Pn&{QffzG-9ReyPeEhqF%~Z3@|r(s z3(wA&)dV~fELW*&*=!~l9M=7wq8xE(<@)BjjN8bUiS8@N9E{wi+Dd!V1AtT;Nl}9> zTz`2ge2Jn#Dlg1kC%oFlOe<>?jYC`Asr^%i4hH;S`*qZTPRan2a9Kjj=0aq{iVi2Z z87PZt$d(LAm_{92kl+2Z%k3KGV;~gsp;C>k?gMYZrVIzaI|0D+fka9G_4v>N96*8T zI(C8bj?A7l%V&U?H_IpSeCvf7@y1e?b>G7cN382GVO0qAMQ93(T*<*9c_;%P1}x2l zi8S$s<=e_8ww%DaBAf4oIQ7}U7_48$eYpo}Fb+F|K|43IAPR1y9xbqPPg6er{I7xj|=>-c%pGBRLn1~=5KbAb1mJAx=z(loN!w{49VkEthF>*OX z)=gqXyZB5%5lIWYPWh~{!5pSt43-)-@L@x=pmiuKP-3Cwq8qSxGNwaTT4->BWEjxk zUjr)z7WrBZB5u3iV>Y_>*i~*!vRYL)iAh5hMqNzVq1eeq=&d9Ye!26jks{f~6Ru&c zg$D;^4ui#kC`rSxx`fP!zZ^6&qSneQzZRq0F*V4QvKYKB<9FC%t#)Tik%Zq*G*IOW z3*`2!4d)!3oH>GxVcXlorJDt+JnH)p{~olYBPq|>_V@8=l#(f*diW=L+%>rfWCcPQ z#H^ksQt15Z5Uc4ODq8_JwD5^H&OGqyH6E@MabJQO>s`?bqgA6}J_QpytW{2jH#eCN z8k7y*TFZ2lj2B|1CB(@QZedFfPhX|IQbKMI;$YK>9Zla0fsU7}an6(kP;sXpBWLR` zJ#z_kk!`JJC7h(1J!+G)gL2WB2&0*~Q!%s??}GH?=`hU@03xOwU} z6s7?tGySLz!%(MwxQRiF)2(vR2wQX`YB}u&I-S+RR)LQcyH407#-{*pWLJJR?X|5 zsAl2k{&0N-?JArn@)9YTo-5+gl}R~XkbZM*5AOjPrcikpE3P?p0oN^?H+5+n)}Qxe z*RQ!-eu0RxPyF8B=}xnseNpQMXFU$d^=(G%kUd&|!BHSm7bXoGR$WA+%yjuA{|S>u z?9N6JDhS+ui~rd?wY_t7`p)|qKIMM>6jz%$jv4hc_YUDjF6-%5muq|SNuoji2)|qK zNY5+oWMe+5vu{I*grk6xlVk;(J)uuy13G`VDbj(~Vz9lA)_;$aj?=-cmd#h~N0mn{ z9EIS_d4C=L3H;Pl^;vcpb&-B+)8vt%#?gn5z>#;G{1L&8u8cXJYADMUsm9>%*%)&F zsi&I{Y=VUsV82+)hdNgDWh^M7^hMs|TA0M269^|RIGfdX1MetV2z`Ycb&_Mn4iRI! zeI6O}O9mOhN6pzfs5IfMz#Gxl`C{(111okA8M4gijgb~5s7QTyh84zUiZZ^sr1^ps z1GO`$eOS@k@XP^OVH|8)n}Wx)fKHoGwL&5;W?qEf5Jdsd!3hf7L`%QNwN0gGBm^2= z@WI+qJMJG1w2AS9d@Dt$sj_P$+S2kh7+M72^SfcdBjQEtWQ5?PT&a~G9hOo6CtS>h zoghqoR;sk{X)`ZK-M|lu{M}0>Mrs^ZW@ngC?c$26_vYKDBK^n7sFiod_xV#XcPL!^ zRPyqD{w^9u{oA3y73IW0 zH;%xop$r(Q=bq=JaLT%myEKD_2&?L@s6TzsUwE#g^OkiU6{lN)(7I?%a;_%r5_^@d zS-Z)Q-2o|~?F~f`sHlhNhiZk;!CW;3Ma6{xPlBjJx8PXc!Oq{uTo$p*tyH~ka`g<` z;3?wLhLg5pfL)2bYZTd)jP%f+N7|vIi?c491#Kv57sE3fQh(ScM?+ucH2M>9Rqj?H zY^d!KezBk6rQ|p{^RNn2dRt(9)VN_j#O!3TV`AGl-@jbbBAW$!3S$LXS0xNMr}S%f z%K9x%MRp(D2uO90(0||EOzFc6DaLm((mCe9Hy2 z-59y8V)5(K^{B0>YZUyNaQD5$3q41j-eX))x+REv|TIckJ+g#DstadNn_l~%*RBSss_jV3XS&>yNBc8H2jo(lwcLz-PuYp< z7>)~}zl$Ts0+RFxnYj7-UMpmFcw_H zYrsXM>8icD)@Iauiu_(Y#~Iyl)|pj@kHkWvg2N$kGG(W>Y)nfNn%z2xvTLwk1O2GQ zb^5KAW?c%5;VM4RWBy}`JVCBFOGQWoA9|+bgn7^fY3tSk1MSZccs9&Fy6{8F>_K@? zK(z=zgmq1R#jGE^eGV`<`>SP9SEBx!_-Ao|VZq6)-rUpd^<2GgVN&uHiM{0zA9kI( z<1^1%*uE$?4mXV@?W8}fvnBOpfwCo^?(a0E402!pZi&Kd5pp$oV%2Ofx<}YC-1mynB3X|BzWC_ufrmaH1F&VrU&Gs+5>uixj*OJ*f=gs9VR8k^7HRR$Ns|DYBc*Slz>hGK5B1}U+}#j0{ohGC zE80>WClD5FP+nUS?1qa}ENOPb2`P4ccI<9j;k?hqEe|^#jE4gguHYz-$_BCovNqIb zMUrsU;Fq%n$Ku_wB{Ny>%(B&x9$pr=Anti@#U%DgKX|HzC^=21<5Fn6EKc#~g!Mcj zJrI(gW+aK+3BWVFPWEF*ntHX5;aabHqRgU-Nr2t++%JRPP7-6$XS|M8o&YSgf3a9A zLW*tSJxoe1?#T4EocApa*+1kUIgy7oA%Ig9n@)AdY%)p_FWgF-Kxx{6vta)2X1O5y z#+%KQlxETmcIz@64y`mrSk2Z17~}k1n{=>d#$AVMbp>_60Jc&$ILCg-DTN~kM8)#o$M#Fk~<10{bQ>_@gU2uZE z*eN~mqqQC*wh{CI(!xvRQ^{jyUcvE~8N)S0bMA^SK@v;b7|xUOi63X~3Qc>2UNSD1) z7moi9K3QN_iW5KmKH>1ijU41PO>BvA6f1;kL)6io%^r>?YQ#+bB;)Rzad5;{XAJGeAT#FnDV0$w2>v|JeFIB zZ>8vmz?WVs78PuCDiHfb@D0Yi;2#%){*#?bY4dpta6dSjquGLcOw?Z{nxg98mN^4* zj&^!WMUQ_zFp+}B|G0vcNsk8(2u9(LAPk5ogKt%zgQ4^1#UCd;`-W#X8v{YyQ_m9g z8`jydw>>@1J{Q*q#5^cHVA~xR9LR3Hl@^bx)`IBKmj+Gmye36;xwL0>sS|mV+$~%b zC;2wEm&Ht3#6P|2Y0XQ+5t-aI)jn{o%&ZHWvjzEtSojFgXxNKO^e(RmM`gsJ4GrR8 zKhBtBoRjnH`mD$kT;-8ttq|iw?*`7iTF_AX<^Qe3=h8L^tqz$w$#Z@Z$`C579Jeeu ztr0z~HEazU&htfG@`HW!201!N(70hCd{%~@Wv)G*uKnJZ8>hFx`9LnYs;T>8p!`5T zx#aXXU?}B{QTV_Ux(EMzDhl-a^y^f5tRU;xnOQoN)pThr4M>-HU)As8nQ34-0*sab&z<2ye-D_3m&Q`KJJ|ZEZbaDrE%j>yQ(LM#N845j zNYrP)@)md;&r5|;JA?<~l^<=F1VRGFM93c=6@MJ`tDO_7E7Ru zW{ShCijJ?yHl63Go)-YlOW2n3W*x%w||iw(Cy>@dBJHdQl){bBVg{wmRt{#oXb9kaWqe{bJPmGE$$ z_0=cmD9dVzh<8&oyM8rK9F^bufW$Bj2cFhw&f*oKKyu$H{PI=Aqe^NL6B=dkMEAk& zE3y&F=x;e|!7kMn%(UX>G!OE$Y$@UyME#d;#d+WLmm@W@y!sboiIox^DZPB|EN<>7 z57xm5YWlFUGyF|{<*;b&Cqm+|DC8{rB9R@2EFHGL^NX*l#AcDpw6}bCmhY7!(Gv{s zm^eYNvzyJLQA#GhmL*oSt^Uulb5&ZYBuGJTC>Vm9yGaZ=Vd--pMUoDRaV_^3hE9b*Pby#Ubl65U!VBm7sV}coY)m zn1Ag^jPPLT93J{wpK%>8TnkNp;=a@;`sA7{Q}JmmS1bEK5=d@hQEWl;k$9M-PYX~S zayGm;P(Wwk23}JR7XM~kNqba`6!Z+Wt2|5K>g_j3ajhR>+;HF?88GBN!P; zr6sQ8YYpn%r^gbi8yYK7qx6U5^Tf<|VfcR$jCo`$VMVh_&(9w@O?|o3eRHq*e*#P z8-==G)D?vB3Zo~b-dkx8lg0^=gn`9FUy?ZzAfWQd>>@cyqF!sHQ_S&@$r&tTB~Lxq zAjAZTK~?J{A|L3)8K>S{`Qf%131B>?<~t=w!D{;olQ>#31R#{go`a9DOy+H*q5t+; z^*Ka!r@#8tk?~tQbylaG-$n#wP2VzIm3vjrZjcmTL zl`{6mhBhMKbSWoGqi;g3z1@G0q!ib`(Zz_o8HG_*vr8U5G|vhZn26h`f~bO&)RY0; zw(CWk*a_{ji_=O9U}66lI` zCm32)SEcAo5)5k>{<8DLI@Zz)*R29BB!^wF;WZRF9sAi39BGObmZzg?$lUn6w1rYPHSB^L4^AN zLObEaUh7TXpt6)hWck#6AZV(2`lze<`urGFre|>LUF+j5;9z%=K@&BPXCM)P$>;Xc z!tRA4j0grcS%E!urO^lsH-Ey*XY4m&9lK(;gJOyKk*#l!y7$BaBC)xHc|3i~e^bpR zz5E-=BX_5n8|<6hLj(W67{mWk@Bfc){NGAX z5-O3SP^38wjh6dCEDLB#0((3`g4rl}@I(&E8V2yDB=wYhSxlxB4&!sRy>NTh#cVvv z=HyRrf9dVK&3lyXel+#=R6^hf`;lF$COPUYG)Bq4`#>p z@u%=$28dn8+?|u94l6)-ay7Z!8l*6?m}*!>#KuZ1rF??R@Zd zrRXSfn3}tyD+Z0WOeFnKEZi^!az>x zDgDtgv>Hk-xS~pZRq`cTQD(f=kMx3Mfm2AVxtR(u^#Ndd6xli@n1(c6QUgznNTseV z_AV-qpfQ0#ZIFIccG-|a+&{gSAgtYJ{5g!ane(6mLAs5z?>ajC?=-`a5p8%b*r*mOk}?)zMfus$+W~k z{Tmz9p5$wsX1@q`aNMukq-jREu;;A6?LA(kpRut+jX?Tt?}4HGQr}7>+8z4miohO2 zU4fQ?Y8ggl%cj&>+M+)TTjn8(?^%`~!oAt#ri8gIbzIig$y#d7o##077fM9sCu%N9 zOIsq4vyox6`itu*j{eOD<$gTZd-$JuyM^cM>{?v<8# zS1yN%R0zRy&>+D*Gv-&S80?JF+Y|c^^IJWDnfy06MI2{NFO-x4JXsb@3Qp;EnL!a{ zJwKwV@mO zYVGvNmeJ!;+ce+@j@oo-+`DaPJX|h@7@4BD`QEdP?NKkYzdIa3KrZt%VUSsR+{b+| zk?dSd#9NnVl?&Y$A{-OtZ>wk%mWVF5)bf`)AA2{EFapIS4jil69Xan>*J^6Juou&`oJx|7-&|@8z?$ z2V#jm!UHstCE*qM{OGtqYY8q+x%SL6&aGY!a>@d=_G~^0;+7dY9P`oJ*)67*9Kx*O zKitC5V3g5;&L-fa37?eN=;V_c^L-ph_uKv5)Q`&!Z!RPlDWA2{J%a2q@_*?-cn@bH zIt)+mA@HaJj2RV+-MNc#y#Vji*N~m!ZyrYyg-7UK4PYK4F7Y$3Y%@Lk6iPp=I96N> z!;ih(KtZMB23*v{`5cJ}^4D*P!k1&OfU&1%borv_q|7jfaV7fL+wwx8Zp*b}B_O>NRSeJeM zpvw3M`=vSYjFYQ11kx1xqOnJ@degPh&SyXnWz-l719EiW17Yo?c~Bh~;R$MOl+jzV zM1yTq-1**x-=AVR;p0;IPi`#=E!G5qIT>EFE`Bn<7o*8!aVd7?(CZT=U9^Gi3rmWUQG z0|GaP9s$^4t_oLCs!fInyCoB(d?=tZ%%Bb2Y+X&7gvQ6~C4kU%e$W_H;-%XSM;&*HYYnLI z>%{5x_RtSUC~PI4C0H^>O%FixKYVubA>#72wexd}Cgwuw5ZYTvcN2ywVP(dO=5975 zCjo)mOa2Bo&ucEsaq8wi1{h*brT(H=XrTOy*P>?0%VV1QDr09X+Je!T)JT`02?gjX zT@B8}h|;4lH35Guq2gKZT?ags-~Ts~S=poPnQ_T1*?U|{$jaur_PjQ6WmF_(XLFG)d#|iiBC=&B zp}1eOQvQ!3UpL?K`=8hAzMkv#a^COr`J8i}d!BPX&*xp-LL#qse~mOtxI-}{yPRNV zJNTL1{7A55F~K>0e&Os%MwQ~?n1>QV=j!8o_`^-&*E|Q-L9DNr%#6sw8kQVE3E|*}$aAoO$@27ei1w=+zU%?AA!;mf#!%IV*w_D=u516!Kz1F0-WnyVB`I6F1Pc3r1=0iT<_(pCyk>@22z1$w$@M>7AIuk6+ zRG&MFVQ_7>5DLoR5HeOa$?2SA(v2u!#8;5I(ss%=x9U#R zU62n~&)22RTTsp${}6C&$+l&0skFVX%ACgc$(iQ#DVRRz!`Y+b>E?;ib(TH#6Wa=} zs(q_;SA|fhyEo7Ix%rAY9j=Ul^Rzd`3ABf+yO@~h@Rh=wo`?;8PdHE1AUo34r7izy znAr`;VavQueSu7bD5r^nXTERcW(P-{2SOSfF1x0cW1Nczvj0}@!!upORN1%_-b2bh zGt#zokJz&SveJRzlUK4DruxR(YuHEAmB%F}buU`*pAzJ7Mbgs4sg;H@&6x*wxvGm6 z>KH@ilsvvdl@CGfm4T+$agodrB=md8ygG!|O=r@FY>S_zX%*)mqf?XBX*chhQ9uPP z-(T(24)})vWD*{bQM5_hy3CD8C>anuNtCXMkG7T?Yew^>=PK!~Hlr0{-0h0cNAJ8> zRMzLFz7aJv)Yh)_s)^L&L*nDV@qfeg>_<`z1z(?s}}3tE4h|7_taB> zPfmmOCFZ8%>`gyf1@|7t3;e~mwBRCDDw(Rrt>@O}obs#1?!W((+9>d$b7t!{&wR!P ziQbn0@j=&sw={`s##Uc@uS^(tbShjtsk=qrU1LW0lu}BplIfzv{fwxNsSaG~b|ryo zTQ}YXfp6o?^sSHW>s~m;l@h6wFbIPw{Z(IqO1u){{hEZgrTdF0o$n;hYIm`h5ejym zWt^w~#8p1J)FtfY6LvGmNQ~#n>4#mN4B^ zjrQk)Zt%k}GBRD>l`<~og6N_{6HYKDtsAtd%y?KbXCQR(sW8O(v_)kwYMz|(OW zsFz6A1^abSklOl`wLC-KYI8x=oMD^qZBs}}JVW@YY|3&k&IZ_n2Ia@5WiK>buV!E- zOsYcS4dFPE7vzj%_?5i2!XY`TiPd*jy>#C`i^XG8h?f35`=)s`0EhQBN!+YrXbpt( z-bwg_Jen`w<+6&B`hldU%rr&Xdgtze>rKuJ61AI12ja-eDZZX-+u1H>Sa|7pCine9 z&MEhmT7nq`P!pPK>l?I8cjuPpN<7(hqH~beChC*YMR+p;;@6#0j2k$=onUM`IXW3> z`dtX8`|@P|Ep-_0>)@&7@aLeg$jOd4G`eIW=^dQQ*^cgKeWAsSHOY?WEOsrtnG|^yeQ3lSd`pKAR}kzgIiEk@OvQb>DS*pGidh`E=BHYepHXbV)SV6pE2dx6 zkND~nK}2qjDVX3Z`H;2~lUvar>zT7u%x8LZa&rp7YH@n@GqQ65Cv+pkxI1OU6(g`b z?>)NcE7>j@p>V0mFk-5Rpi`W}oQ!tUU&Yn8m0OWYFj|~`?aVFOx;e`M)Q!YSokY)3 zV6l-;hK6?j=mp2#1e5cCn7P6n_7)n^+MdRw@5pvkOA>|&B8`QZ32|ynqaf}Kcdro= zzQchCYM0^)7$;m2iZnMbE$!}hwk&AVvN`iX3A9mB&`*BDmLV-m`OMvd`sJ?;%U`p~ zmwow{y6sPbcZNQPZ#GQS0&mzy?s%>_p>ZM|sCXVAUlST;rQ-3#Iu!-bpFSV4g7?-l zGfX>Z#hR+i;9B};^CO@7<<#MGFeY)SC&;a{!` zf;yaQo%{bjSa8KT~@?O$cK z(DGnm7w>cG1hH#*J%X}%Y%~+nLT*{aP08@l&Nu}>!-j|!8lSqt_xUNF+Y}SQmupyb zPua2PI;@1YaIsRF*knA^rJv84Tc=7?J2}!1kMfHSO$d$+PK*u?OI%=P7;`PHxMB0k zau~T0Wk)rPEGJ$NiXW~kfPA#m%Sr|7=$tHelF9A6rFLa$^g{6)8GSW*6}#~Zb^qk% zg=pLwC!SkY+&Gne((9`TCy`i`a#eCS{A2yMi>J>p*NS*!V~aAgK;wnSOHPULqzyj- z-q4BPXqXn))iRnMF*WZj17wUYjC!h43tI7uScHLf1|WJfA7^5O9`%lH>ga`cmpiz( zs|I8nTUD4?d{CQ-vwD!2uwGU_Ts&{1_mvqY`@A{j^b?n&WbPhb418NY1*Otz19`1w zc9rn?0e_*En&8?OWii89x+jaqRVzlL!QUCg^qU&+WERycV&1+fcsJ%ExEPjiQWRTU zCJpu*1dXyvrJJcH`+OKn7;q`X#@Gmy3U?5ZAV~mXjQhBJOCMw>o@2kznF>*?qOW;D z6!GTcM)P-OY-R`Yd>FeX%UyL%dY%~#^Yl!c42;**WqdGtGwTfB9{2mf2h@#M8YyY+!Q(4}X^+V#r zcZXYE$-hJyYzq%>$)k8vSQU` zIpxU*yy~naYp=IocRp5no^PeFROluibl( zmaKkWgSWZHn(`V_&?hM{%xl3TBWCcr59WlX6Q{j45)`A^-kUv4!qM=OdcwpsGB)l} z&-_U+8S8bQ!RDc&Y3~?w5NwLNstoUYqPYs(y+lj!HFqIZ7FA>WsxAE7vB=20K zn_&y{2)Uaw4b^NCFNhJXd&XrhA4E~zD7Ue7X^f98=&5!wn_r=6qAwDkd>g#2+*ahd zaV|_P_8e%jiHh7W;cl(d=&-r-C}_Ov?bts8s^rKUWQ|XkuW!ToSwe}Z{4|kl+q&&W zn%iW48c5*ft#*m)+xSps+j(B5bPh&u0&m6=@WgwBf_QfJJzg2Qdz89HwcV`5kZ#5z zw;W&H8>5R(>KRwvd0gh30wJHA>|2N(im;~wy1HTv_}Ue%qb)>5qL^$hIyPvoT(nk_<`7F;#nS8;q!cqKspvBc<%xMsQj*h|>`Z)F6LDxue@to))OIbs2X+zY2L9#2UNrR^)?c8&PFc?j*&Q-r|C%7a$)ZRQ->#|?rEj&M4spQfNt;J^ntwf(d+q;tt)C`d{*|t)czD4x-qw{Chm0vuKp8axqy5`Yz z1756|;JX1q(lEieR=uT;%havqflgv+`5i!Z`R}(JNV~&`x}I9Lmm;aB7Bnc^UC?>W zu)(J7@fs}pL=Y-4aLq&Z*lO$e^0(bOW z3gWbcvb^gjEfhV=6Lgu2aX{(zjq|NH*fSgm&kBj?6dFqD2MWk5@eHt@_&^ZTX$b?o}S<9BGaCZIm6Hz)Qkruacn!qv*>La|#%j*XFp(*;&v3h4 zcjPbZWzv|cOypb@XDnd}g%(@f7A>w2Nseo|{KdeVQu)mN=W=Q`N?ID%J_SXUr0Rl# z3X;tO*^?41^%c!H;ia@hX``kWS3TR|CJ4_9j-?l6RjC=n?}r&sr>m%58&~?$JJV6{ zDq5h#m4S_BPiibQQaPGg6LIHVCc`9w3^3ZVWP$n>p7 z5dIEH-W9e;$Id8>9?wh%WnWf>4^1U<%vn=<4oNFhVl9zVk+jn;WtQUQ)ZeEjKYy8C z3g#tIb28thR1nZdKrN}(r zJdy-Y3Rvr5D3D|msZbmE;FLePbiM0ZjwTIQQHk)8G+sB$iwmEa2kQv&9Vs9m#$_8j zNKz}(x$Wc(M)a9H-Pn?5(Lk-CmOS(&+EVLOfsiq>e3ru6P?Lp>FOwPt>0o=j8UyF^ zO{(vf#MGx^y~WaOKnt%I78s}60(O#jFx0^47^Ikh$QTar(Dg$c=0KR|rRD|6s zz?tEX0_=(Hm0jWl;QOu!-k)mV?^i(Etl=Lg-{ z0G}CBprLX60zgAUz-fS^&m#o;erEC5TU+mn_Wj(zL$zqMo!e`D>s7X&;E zFz}}}puI+c%xq0uTpWS3RBlIS2jH0)W(9FU1>6PLcj|6O>=y)l`*%P`6K4}U2p}a0 zvInj%$AmqzkNLy%azH|_f7x$lYxSG=-;7BViUN(&0HPUobDixM1RVBzWhv8LokKI2 zjDwvWu=S~8We)+K{oMd-_cuXNO&+{eUaA8Ope3MxME0?PD+0a)99N>WZ66*;sn(N++hjPyz5z0RC{- z$pcSs{|)~a_h?w)y}42A6fg|nRnYUjMaBqg=68&_K%h3eboQ=%i083nfIVZZ04qOp%d*)*hNJA_foPjiW z$1r8ZZiRSvJT3zhK>iR@8_+TTJ!tlNLdL`e0=yjzv3Ie80h#wSfS3$>DB!!@JHxNd z0Mvd0Vqq!zfDy$?goY+|h!e(n3{J2;Ag=b)eLq{F0W*O?j&@|882U5?hUVIw_v3aV8tMn`8jPa5pSxzaZe{z}z|}$zM$o=3-mQ0Zgd?ZtaI> zQVHP1W3v1lbw>|?z@2MO(Ex!5KybKQ@+JRAg1>nzpP-!@3!th3rV=o?eiZ~fQRWy_ zfA!U9^bUL+z_$VJI=ic;{epla<&J@W-QMPZm^kTQ8a^2TX^TDpza*^tOu!WZ=T!PT z+0lJ*HuRnNGobNk0PbPT?i;^h{&0u+-fejISNv#9&j~Ep2;dYspntgzwR6<$@0dTQ z!qLe3Ztc=Ozy!btCcx!G$U7FlBRe}-L(E|RpH%_gt4m_LJllX3!iRYJEPvxcJ>C76 zfBy0_zKaYn{3yG6@;}S&+BeJk5X}$Kchp<Ea-=>VDg&zi*8xM0-ya!{ zcDN@>%H#vMwugU&1KN9pqA6-?Q8N@Dz?VlJ3IDfz#i#_RxgQS*>K+|Q@bek+s7#Qk z(5NZ-4xs&$j)X=@(1(hLn)vPj&pP>Nyu)emQ1MW6)g0hqXa5oJ_slh@(5MMS4xnG= z{0aK#F@_p=e}FdAa3tEl!|+j?h8h`t0CvCmNU%dOwEq<+jmm-=n|r|G^7QX4N4o(v zPU!%%w(Cet)Zev3QA?;TMm_aEK!5(~Nc6pJlp|sQP@z%JI}f0_`u+rc`1Df^j0G&s ScNgau(U?ep-K_E5zy1%ZQTdPn literal 54708 zcmagFV|ZrKvM!pAZQHhO+qP}9lTNj?q^^Y^VFp)SH8qbSJ)2BQ2girk4u zvO<3q)c?v~^Z#E_K}1nTQbJ9gQ9<%vVRAxVj)8FwL5_iTdUB>&m3fhE=kRWl;g`&m z!W5kh{WsV%fO*%je&j+Lv4xxK~zsEYQls$Q-p&dwID|A)!7uWtJF-=Tm1{V@#x*+kUI$=%KUuf2ka zjiZ{oiL1MXE2EjciJM!jrjFNwCh`~hL>iemrqwqnX?T*MX;U>>8yRcZb{Oy+VKZos zLiFKYPw=LcaaQt8tj=eoo3-@bG_342HQ%?jpgAE?KCLEHC+DmjxAfJ%Og^$dpC8Xw zAcp-)tfJm}BPNq_+6m4gBgBm3+CvmL>4|$2N$^Bz7W(}fz1?U-u;nE`+9`KCLuqg} zwNstNM!J4Uw|78&Y9~9>MLf56to!@qGkJw5Thx%zkzj%Ek9Nn1QA@8NBXbwyWC>9H z#EPwjMNYPigE>*Ofz)HfTF&%PFj$U6mCe-AFw$U%-L?~-+nSXHHKkdgC5KJRTF}`G zE_HNdrE}S0zf4j{r_f-V2imSqW?}3w-4=f@o@-q+cZgaAbZ((hn))@|eWWhcT2pLpTpL!;_5*vM=sRL8 zqU##{U#lJKuyqW^X$ETU5ETeEVzhU|1m1750#f}38_5N9)B_2|v@1hUu=Kt7-@dhA zq_`OMgW01n`%1dB*}C)qxC8q;?zPeF_r;>}%JYmlER_1CUbKa07+=TV45~symC*g8 zW-8(gag#cAOuM0B1xG8eTp5HGVLE}+gYTmK=`XVVV*U!>H`~j4+ROIQ+NkN$LY>h4 zqpwdeE_@AX@PL};e5vTn`Ro(EjHVf$;^oiA%@IBQq>R7_D>m2D4OwwEepkg}R_k*M zM-o;+P27087eb+%*+6vWFCo9UEGw>t&WI17Pe7QVuoAoGHdJ(TEQNlJOqnjZ8adCb zI`}op16D@v7UOEo%8E-~m?c8FL1utPYlg@m$q@q7%mQ4?OK1h%ODjTjFvqd!C z-PI?8qX8{a@6d&Lb_X+hKxCImb*3GFemm?W_du5_&EqRq!+H?5#xiX#w$eLti-?E$;Dhu`{R(o>LzM4CjO>ICf z&DMfES#FW7npnbcuqREgjPQM#gs6h>`av_oEWwOJZ2i2|D|0~pYd#WazE2Bbsa}X@ zu;(9fi~%!VcjK6)?_wMAW-YXJAR{QHxrD5g(ou9mR6LPSA4BRG1QSZT6A?kelP_g- zH(JQjLc!`H4N=oLw=f3{+WmPA*s8QEeEUf6Vg}@!xwnsnR0bl~^2GSa5vb!Yl&4!> zWb|KQUsC$lT=3A|7vM9+d;mq=@L%uWKwXiO9}a~gP4s_4Yohc!fKEgV7WbVo>2ITbE*i`a|V!^p@~^<={#?Gz57 zyPWeM2@p>D*FW#W5Q`1`#5NW62XduP1XNO(bhg&cX`-LYZa|m-**bu|>}S;3)eP8_ zpNTnTfm8 ze+7wDH3KJ95p)5tlwk`S7mbD`SqHnYD*6`;gpp8VdHDz%RR_~I_Ar>5)vE-Pgu7^Y z|9Px+>pi3!DV%E%4N;ii0U3VBd2ZJNUY1YC^-e+{DYq+l@cGtmu(H#Oh%ibUBOd?C z{y5jW3v=0eV0r@qMLgv1JjZC|cZ9l9Q)k1lLgm))UR@#FrJd>w^`+iy$c9F@ic-|q zVHe@S2UAnc5VY_U4253QJxm&Ip!XKP8WNcnx9^cQ;KH6PlW8%pSihSH2(@{2m_o+m zr((MvBja2ctg0d0&U5XTD;5?d?h%JcRJp{_1BQW1xu&BrA3(a4Fh9hon-ly$pyeHq zG&;6q?m%NJ36K1Sq_=fdP(4f{Hop;_G_(i?sPzvB zDM}>*(uOsY0I1j^{$yn3#U(;B*g4cy$-1DTOkh3P!LQ;lJlP%jY8}Nya=h8$XD~%Y zbV&HJ%eCD9nui-0cw!+n`V~p6VCRqh5fRX z8`GbdZ@73r7~myQLBW%db;+BI?c-a>Y)m-FW~M=1^|<21_Sh9RT3iGbO{o-hpN%d6 z7%++#WekoBOP^d0$$|5npPe>u3PLvX_gjH2x(?{&z{jJ2tAOWTznPxv-pAv<*V7r$ z6&glt>7CAClWz6FEi3bToz-soY^{ScrjwVPV51=>n->c(NJngMj6TyHty`bfkF1hc zkJS%A@cL~QV0-aK4>Id!9dh7>0IV;1J9(myDO+gv76L3NLMUm9XyPauvNu$S<)-|F zZS}(kK_WnB)Cl`U?jsdYfAV4nrgzIF@+%1U8$poW&h^c6>kCx3;||fS1_7JvQT~CV zQ8Js+!p)3oW>Df(-}uqC`Tcd%E7GdJ0p}kYj5j8NKMp(KUs9u7?jQ94C)}0rba($~ zqyBx$(1ae^HEDG`Zc@-rXk1cqc7v0wibOR4qpgRDt#>-*8N3P;uKV0CgJE2SP>#8h z=+;i_CGlv+B^+$5a}SicVaSeaNn29K`C&=}`=#Nj&WJP9Xhz4mVa<+yP6hkrq1vo= z1rX4qg8dc4pmEvq%NAkpMK>mf2g?tg_1k2%v}<3`$6~Wlq@ItJ*PhHPoEh1Yi>v57 z4k0JMO)*=S`tKvR5gb-(VTEo>5Y>DZJZzgR+j6{Y`kd|jCVrg!>2hVjz({kZR z`dLlKhoqT!aI8=S+fVp(5*Dn6RrbpyO~0+?fy;bm$0jmTN|t5i6rxqr4=O}dY+ROd zo9Et|x}!u*xi~>-y>!M^+f&jc;IAsGiM_^}+4|pHRn{LThFFpD{bZ|TA*wcGm}XV^ zr*C6~@^5X-*R%FrHIgo-hJTBcyQ|3QEj+cSqp#>&t`ZzB?cXM6S(lRQw$I2?m5=wd z78ki`R?%;o%VUhXH?Z#(uwAn9$m`npJ=cA+lHGk@T7qq_M6Zoy1Lm9E0UUysN)I_x zW__OAqvku^>`J&CB=ie@yNWsaFmem}#L3T(x?a`oZ+$;3O-icj2(5z72Hnj=9Z0w% z<2#q-R=>hig*(t0^v)eGq2DHC%GymE-_j1WwBVGoU=GORGjtaqr0BNigOCqyt;O(S zKG+DoBsZU~okF<7ahjS}bzwXxbAxFfQAk&O@>LsZMsZ`?N?|CDWM(vOm%B3CBPC3o z%2t@%H$fwur}SSnckUm0-k)mOtht`?nwsDz=2#v=RBPGg39i#%odKq{K^;bTD!6A9 zskz$}t)sU^=a#jLZP@I=bPo?f-L}wpMs{Tc!m7-bi!Ldqj3EA~V;4(dltJmTXqH0r z%HAWKGutEc9vOo3P6Q;JdC^YTnby->VZ6&X8f{obffZ??1(cm&L2h7q)*w**+sE6dG*;(H|_Q!WxU{g)CeoT z(KY&bv!Usc|m+Fqfmk;h&RNF|LWuNZ!+DdX*L=s-=_iH=@i` z?Z+Okq^cFO4}_n|G*!)Wl_i%qiMBaH8(WuXtgI7EO=M>=i_+;MDjf3aY~6S9w0K zUuDO7O5Ta6+k40~xh~)D{=L&?Y0?c$s9cw*Ufe18)zzk%#ZY>Tr^|e%8KPb0ht`b( zuP@8#Ox@nQIqz9}AbW0RzE`Cf>39bOWz5N3qzS}ocxI=o$W|(nD~@EhW13Rj5nAp; zu2obEJa=kGC*#3=MkdkWy_%RKcN=?g$7!AZ8vBYKr$ePY(8aIQ&yRPlQ=mudv#q$q z4%WzAx=B{i)UdLFx4os?rZp6poShD7Vc&mSD@RdBJ=_m^&OlkEE1DFU@csgKcBifJ zz4N7+XEJhYzzO=86 z#%eBQZ$Nsf2+X0XPHUNmg#(sNt^NW1Y0|M(${e<0kW6f2q5M!2YE|hSEQ*X-%qo(V zHaFwyGZ0on=I{=fhe<=zo{=Og-_(to3?cvL4m6PymtNsdDINsBh8m>a%!5o3s(en) z=1I z6O+YNertC|OFNqd6P=$gMyvmfa`w~p9*gKDESFqNBy(~Zw3TFDYh}$iudn)9HxPBi zdokK@o~nu?%imcURr5Y~?6oo_JBe}t|pU5qjai|#JDyG=i^V~7+a{dEnO<(y>ahND#_X_fcEBNiZ)uc&%1HVtx8Ts z*H_Btvx^IhkfOB#{szN*n6;y05A>3eARDXslaE>tnLa>+`V&cgho?ED+&vv5KJszf zG4@G;7i;4_bVvZ>!mli3j7~tPgybF5|J6=Lt`u$D%X0l}#iY9nOXH@(%FFJLtzb%p zzHfABnSs;v-9(&nzbZytLiqqDIWzn>JQDk#JULcE5CyPq_m#4QV!}3421haQ+LcfO*>r;rg6K|r#5Sh|y@h1ao%Cl)t*u`4 zMTP!deC?aL7uTxm5^nUv#q2vS-5QbBKP|drbDXS%erB>fYM84Kpk^au99-BQBZR z7CDynflrIAi&ahza+kUryju5LR_}-Z27g)jqOc(!Lx9y)e z{cYc&_r947s9pteaa4}dc|!$$N9+M38sUr7h(%@Ehq`4HJtTpA>B8CLNO__@%(F5d z`SmX5jbux6i#qc}xOhumzbAELh*Mfr2SW99=WNOZRZgoCU4A2|4i|ZVFQt6qEhH#B zK_9G;&h*LO6tB`5dXRSBF0hq0tk{2q__aCKXYkP#9n^)@cq}`&Lo)1KM{W+>5mSed zKp~=}$p7>~nK@va`vN{mYzWN1(tE=u2BZhga5(VtPKk(*TvE&zmn5vSbjo zZLVobTl%;t@6;4SsZ>5+U-XEGUZGG;+~|V(pE&qqrp_f~{_1h@5ZrNETqe{bt9ioZ z#Qn~gWCH!t#Ha^n&fT2?{`}D@s4?9kXj;E;lWV9Zw8_4yM0Qg-6YSsKgvQ*fF{#Pq z{=(nyV>#*`RloBVCs;Lp*R1PBIQOY=EK4CQa*BD0MsYcg=opP?8;xYQDSAJBeJpw5 zPBc_Ft9?;<0?pBhCmOtWU*pN*;CkjJ_}qVic`}V@$TwFi15!mF1*m2wVX+>5p%(+R zQ~JUW*zWkalde{90@2v+oVlkxOZFihE&ZJ){c?hX3L2@R7jk*xjYtHi=}qb+4B(XJ z$gYcNudR~4Kz_WRq8eS((>ALWCO)&R-MXE+YxDn9V#X{_H@j616<|P(8h(7z?q*r+ zmpqR#7+g$cT@e&(%_|ipI&A%9+47%30TLY(yuf&*knx1wNx|%*H^;YB%ftt%5>QM= z^i;*6_KTSRzQm%qz*>cK&EISvF^ovbS4|R%)zKhTH_2K>jP3mBGn5{95&G9^a#4|K zv+!>fIsR8z{^x4)FIr*cYT@Q4Z{y}};rLHL+atCgHbfX*;+k&37DIgENn&=k(*lKD zG;uL-KAdLn*JQ?@r6Q!0V$xXP=J2i~;_+i3|F;_En;oAMG|I-RX#FwnmU&G}w`7R{ z788CrR-g1DW4h_`&$Z`ctN~{A)Hv_-Bl!%+pfif8wN32rMD zJDs$eVWBYQx1&2sCdB0!vU5~uf)=vy*{}t{2VBpcz<+~h0wb7F3?V^44*&83Z2#F` z32!rd4>uc63rQP$3lTH3zb-47IGR}f)8kZ4JvX#toIpXH`L%NnPDE~$QI1)0)|HS4 zVcITo$$oWWwCN@E-5h>N?Hua!N9CYb6f8vTFd>h3q5Jg-lCI6y%vu{Z_Uf z$MU{{^o~;nD_@m2|E{J)q;|BK7rx%`m``+OqZAqAVj-Dy+pD4-S3xK?($>wn5bi90CFAQ+ACd;&m6DQB8_o zjAq^=eUYc1o{#+p+ zn;K<)Pn*4u742P!;H^E3^Qu%2dM{2slouc$AN_3V^M7H_KY3H)#n7qd5_p~Za7zAj|s9{l)RdbV9e||_67`#Tu*c<8!I=zb@ z(MSvQ9;Wrkq6d)!9afh+G`!f$Ip!F<4ADdc*OY-y7BZMsau%y?EN6*hW4mOF%Q~bw z2==Z3^~?q<1GTeS>xGN-?CHZ7a#M4kDL zQxQr~1ZMzCSKFK5+32C%+C1kE#(2L=15AR!er7GKbp?Xd1qkkGipx5Q~FI-6zt< z*PTpeVI)Ngnnyaz5noIIgNZtb4bQdKG{Bs~&tf)?nM$a;7>r36djllw%hQxeCXeW^ z(i6@TEIuxD<2ulwLTt|&gZP%Ei+l!(%p5Yij6U(H#HMkqM8U$@OKB|5@vUiuY^d6X zW}fP3;Kps6051OEO(|JzmVU6SX(8q>*yf*x5QoxDK={PH^F?!VCzES_Qs>()_y|jg6LJlJWp;L zKM*g5DK7>W_*uv}{0WUB0>MHZ#oJZmO!b3MjEc}VhsLD~;E-qNNd?x7Q6~v zR=0$u>Zc2Xr}>x_5$-s#l!oz6I>W?lw;m9Ae{Tf9eMX;TI-Wf_mZ6sVrMnY#F}cDd z%CV*}fDsXUF7Vbw>PuDaGhu631+3|{xp<@Kl|%WxU+vuLlcrklMC!Aq+7n~I3cmQ! z`e3cA!XUEGdEPSu``&lZEKD1IKO(-VGvcnSc153m(i!8ohi`)N2n>U_BemYJ`uY>8B*Epj!oXRLV}XK}>D*^DHQ7?NY*&LJ9VSo`Ogi9J zGa;clWI8vIQqkngv2>xKd91K>?0`Sw;E&TMg&6dcd20|FcTsnUT7Yn{oI5V4@Ow~m zz#k~8TM!A9L7T!|colrC0P2WKZW7PNj_X4MfESbt<-soq*0LzShZ}fyUx!(xIIDwx zRHt^_GAWe0-Vm~bDZ(}XG%E+`XhKpPlMBo*5q_z$BGxYef8O!ToS8aT8pmjbPq)nV z%x*PF5ZuSHRJqJ!`5<4xC*xb2vC?7u1iljB_*iUGl6+yPyjn?F?GOF2_KW&gOkJ?w z3e^qc-te;zez`H$rsUCE0<@7PKGW?7sT1SPYWId|FJ8H`uEdNu4YJjre`8F*D}6Wh z|FQ`xf7yiphHIAkU&OYCn}w^ilY@o4larl?^M7&8YI;hzBIsX|i3UrLsx{QDKwCX< zy;a>yjfJ6!sz`NcVi+a!Fqk^VE^{6G53L?@Tif|j!3QZ0fk9QeUq8CWI;OmO-Hs+F zuZ4sHLA3{}LR2Qlyo+{d@?;`tpp6YB^BMoJt?&MHFY!JQwoa0nTSD+#Ku^4b{5SZVFwU9<~APYbaLO zu~Z)nS#dxI-5lmS-Bnw!(u15by(80LlC@|ynj{TzW)XcspC*}z0~8VRZq>#Z49G`I zgl|C#H&=}n-ajxfo{=pxPV(L*7g}gHET9b*s=cGV7VFa<;Htgjk>KyW@S!|z`lR1( zGSYkEl&@-bZ*d2WQ~hw3NpP=YNHF^XC{TMG$Gn+{b6pZn+5=<()>C!N^jncl0w6BJ zdHdnmSEGK5BlMeZD!v4t5m7ct7{k~$1Ie3GLFoHjAH*b?++s<|=yTF+^I&jT#zuMx z)MLhU+;LFk8bse|_{j+d*a=&cm2}M?*arjBPnfPgLwv)86D$6L zLJ0wPul7IenMvVAK$z^q5<^!)7aI|<&GGEbOr=E;UmGOIa}yO~EIr5xWU_(ol$&fa zR5E(2vB?S3EvJglTXdU#@qfDbCYs#82Yo^aZN6`{Ex#M)easBTe_J8utXu(fY1j|R z9o(sQbj$bKU{IjyhosYahY{63>}$9_+hWxB3j}VQkJ@2$D@vpeRSldU?&7I;qd2MF zSYmJ>zA(@N_iK}m*AMPIJG#Y&1KR)6`LJ83qg~`Do3v^B0>fU&wUx(qefuTgzFED{sJ65!iw{F2}1fQ3= ziFIP{kezQxmlx-!yo+sC4PEtG#K=5VM9YIN0z9~c4XTX?*4e@m;hFM!zVo>A`#566 z>f&3g94lJ{r)QJ5m7Xe3SLau_lOpL;A($wsjHR`;xTXgIiZ#o&vt~ zGR6KdU$FFbLfZCC3AEu$b`tj!9XgOGLSV=QPIYW zjI!hSP#?8pn0@ezuenOzoka8!8~jXTbiJ6+ZuItsWW03uzASFyn*zV2kIgPFR$Yzm zE<$cZlF>R8?Nr2_i?KiripBc+TGgJvG@vRTY2o?(_Di}D30!k&CT`>+7ry2!!iC*X z<@=U0_C#16=PN7bB39w+zPwDOHX}h20Ap);dx}kjXX0-QkRk=cr};GYsjSvyLZa-t zzHONWddi*)RDUH@RTAsGB_#&O+QJaaL+H<<9LLSE+nB@eGF1fALwjVOl8X_sdOYme z0lk!X=S(@25=TZHR7LlPp}fY~yNeThMIjD}pd9+q=j<_inh0$>mIzWVY+Z9p<{D^#0Xk+b_@eNSiR8;KzSZ#7lUsk~NGMcB8C2c=m2l5paHPq`q{S(kdA7Z1a zyfk2Y;w?^t`?@yC5Pz9&pzo}Hc#}mLgDmhKV|PJ3lKOY(Km@Fi2AV~CuET*YfUi}u zfInZnqDX(<#vaS<^fszuR=l)AbqG{}9{rnyx?PbZz3Pyu!eSJK`uwkJU!ORQXy4x83r!PNgOyD33}}L=>xX_93l6njNTuqL8J{l%*3FVn3MG4&Fv*`lBXZ z?=;kn6HTT^#SrPX-N)4EZiIZI!0ByXTWy;;J-Tht{jq1mjh`DSy7yGjHxIaY%*sTx zuy9#9CqE#qi>1misx=KRWm=qx4rk|}vd+LMY3M`ow8)}m$3Ggv&)Ri*ON+}<^P%T5 z_7JPVPfdM=Pv-oH<tecoE}(0O7|YZc*d8`Uv_M*3Rzv7$yZnJE6N_W=AQ3_BgU_TjA_T?a)U1csCmJ&YqMp-lJe`y6>N zt++Bi;ZMOD%%1c&-Q;bKsYg!SmS^#J@8UFY|G3!rtyaTFb!5@e(@l?1t(87ln8rG? z--$1)YC~vWnXiW3GXm`FNSyzu!m$qT=Eldf$sMl#PEfGmzQs^oUd=GIQfj(X=}dw+ zT*oa0*oS%@cLgvB&PKIQ=Ok?>x#c#dC#sQifgMwtAG^l3D9nIg(Zqi;D%807TtUUCL3_;kjyte#cAg?S%e4S2W>9^A(uy8Ss0Tc++ZTjJw1 z&Em2g!3lo@LlDyri(P^I8BPpn$RE7n*q9Q-c^>rfOMM6Pd5671I=ZBjAvpj8oIi$! zl0exNl(>NIiQpX~FRS9UgK|0l#s@#)p4?^?XAz}Gjb1?4Qe4?j&cL$C8u}n)?A@YC zfmbSM`Hl5pQFwv$CQBF=_$Sq zxsV?BHI5bGZTk?B6B&KLdIN-40S426X3j_|ceLla*M3}3gx3(_7MVY1++4mzhH#7# zD>2gTHy*%i$~}mqc#gK83288SKp@y3wz1L_e8fF$Rb}ex+`(h)j}%~Ld^3DUZkgez zOUNy^%>>HHE|-y$V@B}-M|_{h!vXpk01xaD%{l{oQ|~+^>rR*rv9iQen5t?{BHg|% zR`;S|KtUb!X<22RTBA4AAUM6#M?=w5VY-hEV)b`!y1^mPNEoy2K)a>OyA?Q~Q*&(O zRzQI~y_W=IPi?-OJX*&&8dvY0zWM2%yXdFI!D-n@6FsG)pEYdJbuA`g4yy;qrgR?G z8Mj7gv1oiWq)+_$GqqQ$(ZM@#|0j7})=#$S&hZwdoijFI4aCFLVI3tMH5fLreZ;KD zqA`)0l~D2tuIBYOy+LGw&hJ5OyE+@cnZ0L5+;yo2pIMdt@4$r^5Y!x7nHs{@>|W(MzJjATyWGNwZ^4j+EPU0RpAl-oTM@u{lx*i0^yyWPfHt6QwPvYpk9xFMWfBFt!+Gu6TlAmr zeQ#PX71vzN*_-xh&__N`IXv6`>CgV#eA_%e@7wjgkj8jlKzO~Ic6g$cT`^W{R{606 zCDP~+NVZ6DMO$jhL~#+!g*$T!XW63#(ngDn#Qwy71yj^gazS{e;3jGRM0HedGD@pt z?(ln3pCUA(ekqAvvnKy0G@?-|-dh=eS%4Civ&c}s%wF@0K5Bltaq^2Os1n6Z3%?-Q zAlC4goQ&vK6TpgtzkHVt*1!tBYt-`|5HLV1V7*#45Vb+GACuU+QB&hZ=N_flPy0TY zR^HIrdskB#<$aU;HY(K{a3(OQa$0<9qH(oa)lg@Uf>M5g2W0U5 zk!JSlhrw8quBx9A>RJ6}=;W&wt@2E$7J=9SVHsdC?K(L(KACb#z)@C$xXD8^!7|uv zZh$6fkq)aoD}^79VqdJ!Nz-8$IrU(_-&^cHBI;4 z^$B+1aPe|LG)C55LjP;jab{dTf$0~xbXS9!!QdcmDYLbL^jvxu2y*qnx2%jbL%rB z{aP85qBJe#(&O~Prk%IJARcdEypZ)vah%ZZ%;Zk{eW(U)Bx7VlzgOi8)x z`rh4l`@l_Ada7z&yUK>ZF;i6YLGwI*Sg#Fk#Qr0Jg&VLax(nNN$u-XJ5=MsP3|(lEdIOJ7|(x3iY;ea)5#BW*mDV%^=8qOeYO&gIdJVuLLN3cFaN=xZtFB=b zH{l)PZl_j^u+qx@89}gAQW7ofb+k)QwX=aegihossZq*+@PlCpb$rpp>Cbk9UJO<~ zDjlXQ_Ig#W0zdD3&*ei(FwlN#3b%FSR%&M^ywF@Fr>d~do@-kIS$e%wkIVfJ|Ohh=zc zF&Rnic^|>@R%v?@jO}a9;nY3Qrg_!xC=ZWUcYiA5R+|2nsM*$+c$TOs6pm!}Z}dfM zGeBhMGWw3$6KZXav^>YNA=r6Es>p<6HRYcZY)z{>yasbC81A*G-le8~QoV;rtKnkx z;+os8BvEe?0A6W*a#dOudsv3aWs?d% z0oNngyVMjavLjtjiG`!007#?62ClTqqU$@kIY`=x^$2e>iqIy1>o|@Tw@)P)B8_1$r#6>DB_5 zmaOaoE~^9TolgDgooKFuEFB#klSF%9-~d2~_|kQ0Y{Ek=HH5yq9s zDq#1S551c`kSiWPZbweN^A4kWiP#Qg6er1}HcKv{fxb1*BULboD0fwfaNM_<55>qM zETZ8TJDO4V)=aPp_eQjX%||Ud<>wkIzvDlpNjqW>I}W!-j7M^TNe5JIFh#-}zAV!$ICOju8Kx)N z0vLtzDdy*rQN!7r>Xz7rLw8J-(GzQlYYVH$WK#F`i_i^qVlzTNAh>gBWKV@XC$T-` z3|kj#iCquDhiO7NKum07i|<-NuVsX}Q}mIP$jBJDMfUiaWR3c|F_kWBMw0_Sr|6h4 zk`_r5=0&rCR^*tOy$A8K;@|NqwncjZ>Y-75vlpxq%Cl3EgH`}^^~=u zoll6xxY@a>0f%Ddpi;=cY}fyG!K2N-dEyXXmUP5u){4VnyS^T4?pjN@Ot4zjL(Puw z_U#wMH2Z#8Pts{olG5Dy0tZj;N@;fHheu>YKYQU=4Bk|wcD9MbA`3O4bj$hNRHwzb zSLcG0SLV%zywdbuwl(^E_!@&)TdXge4O{MRWk2RKOt@!8E{$BU-AH(@4{gxs=YAz9LIob|Hzto0}9cWoz6Tp2x0&xi#$ zHh$dwO&UCR1Ob2w00-2eG7d4=cN(Y>0R#$q8?||q@iTi+7-w-xR%uMr&StFIthC<# zvK(aPduwuNB}oJUV8+Zl)%cnfsHI%4`;x6XW^UF^e4s3Z@S<&EV8?56Wya;HNs0E> z`$0dgRdiUz9RO9Au3RmYq>K#G=X%*_dUbSJHP`lSfBaN8t-~@F>)BL1RT*9I851A3 z<-+Gb#_QRX>~av#Ni<#zLswtu-c6{jGHR>wflhKLzC4P@b%8&~u)fosoNjk4r#GvC zlU#UU9&0Hv;d%g72Wq?Ym<&&vtA3AB##L}=ZjiTR4hh7J)e>ei} zt*u+>h%MwN`%3}b4wYpV=QwbY!jwfIj#{me)TDOG`?tI!%l=AwL2G@9I~}?_dA5g6 zCKgK(;6Q0&P&K21Tx~k=o6jwV{dI_G+Ba*Zts|Tl6q1zeC?iYJTb{hel*x>^wb|2RkHkU$!+S4OU4ZOKPZjV>9OVsqNnv5jK8TRAE$A&^yRwK zj-MJ3Pl?)KA~fq#*K~W0l4$0=8GRx^9+?w z!QT8*-)w|S^B0)ZeY5gZPI2G(QtQf?DjuK(s^$rMA!C%P22vynZY4SuOE=wX2f8$R z)A}mzJi4WJnZ`!bHG1=$lwaxm!GOnRbR15F$nRC-M*H<*VfF|pQw(;tbSfp({>9^5 zw_M1-SJ9eGF~m(0dvp*P8uaA0Yw+EkP-SWqu zqal$hK8SmM7#Mrs0@OD+%_J%H*bMyZiWAZdsIBj#lkZ!l2c&IpLu(5^T0Ge5PHzR} zn;TXs$+IQ_&;O~u=Jz+XE0wbOy`=6>m9JVG} zJ~Kp1e5m?K3x@@>!D)piw^eMIHjD4RebtR`|IlckplP1;r21wTi8v((KqNqn%2CB< zifaQc&T}*M&0i|LW^LgdjIaX|o~I$`owHolRqeH_CFrqCUCleN130&vH}dK|^kC>) z-r2P~mApHotL4dRX$25lIcRh_*kJaxi^%ZN5-GAAMOxfB!6flLPY-p&QzL9TE%ho( zRwftE3sy5<*^)qYzKkL|rE>n@hyr;xPqncY6QJ8125!MWr`UCWuC~A#G1AqF1@V$kv>@NBvN&2ygy*{QvxolkRRb%Ui zsmKROR%{*g*WjUUod@@cS^4eF^}yQ1>;WlGwOli z+Y$(8I`0(^d|w>{eaf!_BBM;NpCoeem2>J}82*!em=}}ymoXk>QEfJ>G(3LNA2-46 z5PGvjr)Xh9>aSe>vEzM*>xp{tJyZox1ZRl}QjcvX2TEgNc^(_-hir@Es>NySoa1g^ zFow_twnHdx(j?Q_3q51t3XI7YlJ4_q&(0#)&a+RUy{IcBq?)eaWo*=H2UUVIqtp&lW9JTJiP&u zw8+4vo~_IJXZIJb_U^&=GI1nSD%e;P!c{kZALNCm5c%%oF+I3DrA63_@4)(v4(t~JiddILp7jmoy+>cD~ivwoctFfEL zP*#2Rx?_&bCpX26MBgp^4G>@h`Hxc(lnqyj!*t>9sOBcXN(hTwEDpn^X{x!!gPX?1 z*uM$}cYRwHXuf+gYTB}gDTcw{TXSOUU$S?8BeP&sc!Lc{{pEv}x#ELX>6*ipI1#>8 zKes$bHjiJ1OygZge_ak^Hz#k;=od1wZ=o71ba7oClBMq>Uk6hVq|ePPt)@FM5bW$I z;d2Or@wBjbTyZj|;+iHp%Bo!Vy(X3YM-}lasMItEV_QrP-Kk_J4C>)L&I3Xxj=E?| zsAF(IfVQ4w+dRRnJ>)}o^3_012YYgFWE)5TT=l2657*L8_u1KC>Y-R{7w^ShTtO;VyD{dezY;XD@Rwl_9#j4Uo!1W&ZHVe0H>f=h#9k>~KUj^iUJ%@wU{Xuy z3FItk0<;}6D02$u(RtEY#O^hrB>qgxnOD^0AJPGC9*WXw_$k%1a%-`>uRIeeAIf3! zbx{GRnG4R$4)3rVmg63gW?4yIWW_>;t3>4@?3}&ct0Tk}<5ljU>jIN1 z&+mzA&1B6`v(}i#vAzvqWH~utZzQR;fCQGLuCN|p0hey7iCQ8^^dr*hi^wC$bTk`8M(JRKtQuXlSf$d(EISvuY0dM z7&ff;p-Ym}tT8^MF5ACG4sZmAV!l;0h&Mf#ZPd--_A$uv2@3H!y^^%_&Iw$*p79Uc5@ZXLGK;edg%)6QlvrN`U7H@e^P*0Atd zQB%>4--B1!9yeF(3vk;{>I8+2D;j`zdR8gd8dHuCQ_6|F(5-?gd&{YhLeyq_-V--4 z(SP#rP=-rsSHJSHDpT1{dMAb7-=9K1-@co_!$dG^?c(R-W&a_C5qy2~m3@%vBGhgnrw|H#g9ABb7k{NE?m4xD?;EV+fPdE>S2g$U(&_zGV+TPvaot>W_ zf8yY@)yP8k$y}UHVgF*uxtjW2zX4Hc3;W&?*}K&kqYpi%FHarfaC$ETHpSoP;A692 zR*LxY1^BO1ry@7Hc9p->hd==U@cuo*CiTnozxen;3Gct=?{5P94TgQ(UJoBb`7z@BqY z;q&?V2D1Y%n;^Dh0+eD)>9<}=A|F5{q#epBu#sf@lRs`oFEpkE%mrfwqJNFCpJC$| zy6#N;GF8XgqX(m2yMM2yq@TxStIR7whUIs2ar$t%Avh;nWLwElVBSI#j`l2$lb-!y zK|!?0hJ1T-wL{4uJhOFHp4?@28J^Oh61DbeTeSWub(|dL-KfxFCp0CjQjV`WaPW|U z=ev@VyC>IS@{ndzPy||b3z-bj5{Y53ff}|TW8&&*pu#?qs?)#&M`ACfb;%m+qX{Or zb+FNNHU}mz!@!EdrxmP_6eb3Cah!mL0ArL#EA1{nCY-!jL8zzz7wR6wAw(8K|IpW; zUvH*b1wbuRlwlUt;dQhx&pgsvJcUpm67rzkNc}2XbC6mZAgUn?VxO6YYg=M!#e=z8 zjX5ZLyMyz(VdPVyosL0}ULO!Mxu>hh`-MItnGeuQ;wGaU0)gIq3ZD=pDc(Qtk}APj z#HtA;?idVKNF)&0r|&w#l7DbX%b91b2;l2=L8q#}auVdk{RuYn3SMDo1%WW0tD*62 zaIj65Y38;?-~@b82AF!?Nra2;PU)t~qYUhl!GDK3*}%@~N0GQH7zflSpfP-ydOwNe zOK~w((+pCD&>f!b!On);5m+zUBFJtQ)mV^prS3?XgPybC2%2LiE5w+S4B|lP z+_>3$`g=%P{IrN|1Oxz30R{kI`}ZL!r|)RS@8Do;ZD3_=PbBrrP~S@EdsD{V+`!4v z{MSF}j!6odl33rA+$odIMaK%ersg%xMz>JQ^R+!qNq$5S{KgmGN#gAApX*3ib)TDsVVi>4ypIX|Ik4d6E}v z=8+hs9J=k3@Eiga^^O|ESMQB-O6i+BL*~*8coxjGs{tJ9wXjGZ^Vw@j93O<&+bzAH z9+N^ALvDCV<##cGoo5fX;wySGGmbH zHsslio)cxlud=iP2y=nM>v8vBn*hJ0KGyNOy7dr8yJKRh zywBOa4Lhh58y06`5>ESYXqLt8ZM1axd*UEp$wl`APU}C9m1H8-ModG!(wfSUQ%}rT3JD*ud~?WJdM}x>84)Cra!^J9wGs6^G^ze~eV(d&oAfm$ z_gwq4SHe=<#*FN}$5(0d_NumIZYaqs|MjFtI_rJb^+ZO?*XQ*47mzLNSL7~Nq+nw8 zuw0KwWITC43`Vx9eB!0Fx*CN9{ea$xjCvtjeyy>yf!ywxvv6<*h0UNXwkEyRxX{!e$TgHZ^db3r;1qhT)+yt@|_!@ zQG2aT`;lj>qjY`RGfQE?KTt2mn=HmSR>2!E38n8PlFs=1zsEM}AMICb z86Dbx(+`!hl$p=Z)*W~+?_HYp+CJacrCS-Fllz!7E>8*!E(yCh-cWbKc7)mPT6xu= zfKpF3I+p%yFXkMIq!ALiXF89-aV{I6v+^k#!_xwtQ*Nl#V|hKg=nP=fG}5VB8Ki7) z;19!on-iq&Xyo#AowvpA)RRgF?YBdDc$J8*)2Wko;Y?V6XMOCqT(4F#U2n1jg*4=< z8$MfDYL|z731iEKB3WW#kz|c3qh7AXjyZ}wtSg9xA(ou-pLoxF{4qk^KS?!d3J0!! zqE#R9NYGUyy>DEs%^xW;oQ5Cs@fomcrsN}rI2Hg^6y9kwLPF`K3llX00aM_r)c?ay zevlHA#N^8N+AI=)vx?4(=?j^ba^{umw140V#g58#vtnh8i7vRs*UD=lge;T+I zl1byCNr5H%DF58I2(rk%8hQ;zuCXs=sipbQy?Hd;umv4!fav@LE4JQ^>J{aZ=!@Gc~p$JudMy%0{=5QY~S8YVP zaP6gRqfZ0>q9nR3p+Wa8icNyl0Zn4k*bNto-(+o@-D8cd1Ed7`}dN3%wezkFxj_#_K zyV{msOOG;n+qbU=jBZk+&S$GEwJ99zSHGz8hF1`Xxa^&l8aaD8OtnIVsdF0cz=Y)? zP$MEdfKZ}_&#AC)R%E?G)tjrKsa-$KW_-$QL}x$@$NngmX2bHJQG~77D1J%3bGK!- zl!@kh5-uKc@U4I_Er;~epL!gej`kdX>tSXVFP-BH#D-%VJOCpM(-&pOY+b#}lOe)Z z0MP5>av1Sy-dfYFy%?`p`$P|`2yDFlv(8MEsa++Qv5M?7;%NFQK0E`Ggf3@2aUwtBpCoh`D}QLY%QAnJ z%qcf6!;cjOTYyg&2G27K(F8l^RgdV-V!~b$G%E=HP}M*Q*%xJV3}I8UYYd)>*nMvw zemWg`K6Rgy+m|y!8&*}=+`STm(dK-#b%)8nLsL&0<8Zd^|# z;I2gR&e1WUS#v!jX`+cuR;+yi(EiDcRCouW0AHNd?;5WVnC_Vg#4x56#0FOwTH6_p z#GILFF0>bb_tbmMM0|sd7r%l{U!fI0tGza&?65_D7+x9G zf3GA{c|mnO(|>}y(}%>|2>p0X8wRS&Eb0g)rcICIctfD_I9Wd+hKuEqv?gzEZBxG-rG~e!-2hqaR$Y$I@k{rLyCccE}3d)7Fn3EvfsEhA|bnJ374&pZDq&i zr(9#eq(g8^tG??ZzVk(#jU+-ce`|yiQ1dgrJ)$|wk?XLEqv&M+)I*OZ*oBCizjHuT zjZ|mW=<1u$wPhyo#&rIO;qH~pu4e3X;!%BRgmX%?&KZ6tNl386-l#a>ug5nHU2M~{fM2jvY*Py< zbR&^o&!T19G6V-pV@CB)YnEOfmrdPG%QByD?=if99ihLxP6iA8$??wUPWzptC{u5H z38Q|!=IW`)5Gef4+pz|9fIRXt>nlW)XQvUXBO8>)Q=$@gtwb1iEkU4EOWI4`I4DN5 zTC-Pk6N>2%7Hikg?`Poj5lkM0T_i zoCXfXB&}{TG%IB)ENSfI_Xg3=lxYc6-P059>oK;L+vGMy_h{y9soj#&^q5E!pl(Oq zl)oCBi56u;YHkD)d`!iOAhEJ0A^~T;uE9~Yp0{E%G~0q|9f34F!`P56-ZF{2hSaWj zio%9RR%oe~he22r@&j_d(y&nAUL*ayBY4#CWG&gZ8ybs#UcF?8K#HzziqOYM-<`C& z1gD?j)M0bp1w*U>X_b1@ag1Fx=d*wlr zEAcpmI#5LtqcX95LeS=LXlzh*l;^yPl_6MKk)zPuTz_p8ynQ5;oIOUAoPED=+M6Q( z8YR!DUm#$zTM9tbNhxZ4)J0L&Hpn%U>wj3z<=g;`&c_`fGufS!o|1%I_sA&;14bRC z3`BtzpAB-yl!%zM{Aiok8*X%lDNrPiAjBnzHbF0=Ua*3Lxl(zN3Thj2x6nWi^H7Jlwd2fxIvnI-SiC%*j z2~wIWWKT^5fYipo-#HSrr;(RkzzCSt?THVEH2EPvV-4c#Gu4&1X% z<1zTAM7ZM(LuD@ZPS?c30Ur`;2w;PXPVevxT)Ti25o}1JL>MN5i1^(aCF3 zbp>RI?X(CkR9*Hnv!({Ti@FBm;`Ip%e*D2tWEOc62@$n7+gWb;;j}@G()~V)>s}Bd zw+uTg^ibA(gsp*|&m7Vm=heuIF_pIukOedw2b_uO8hEbM4l=aq?E-7M_J`e(x9?{5 zpbgu7h}#>kDQAZL;Q2t?^pv}Y9Zlu=lO5e18twH&G&byq9XszEeXt$V93dQ@Fz2DV zs~zm*L0uB`+o&#{`uVYGXd?)Fv^*9mwLW4)IKoOJ&(8uljK?3J`mdlhJF1aK;#vlc zJdTJc2Q>N*@GfafVw45B03)Ty8qe>Ou*=f#C-!5uiyQ^|6@Dzp9^n-zidp*O`YuZ|GO28 zO0bqi;)fspT0dS2;PLm(&nLLV&&=Ingn(0~SB6Fr^AxPMO(r~y-q2>gRWv7{zYW6c zfiuqR)Xc41A7Eu{V7$-yxYT-opPtqQIJzMVkxU)cV~N0ygub%l9iHT3eQtB>nH0c` zFy}Iwd9vocxlm!P)eh0GwKMZ(fEk92teSi*fezYw3qRF_E-EcCh-&1T)?beW?9Q_+pde8&UW*(avPF4P}M#z*t~KlF~#5TT!&nu z>FAKF8vQl>Zm(G9UKi4kTqHj`Pf@Z@Q(bmZkseb1^;9k*`a9lKXceKX#dMd@ds`t| z2~UPsbn2R0D9Nm~G*oc@(%oYTD&yK)scA?36B7mndR9l*hNg!3?6>CR+tF1;6sr?V zzz8FBrZ@g4F_!O2igIGZcWd zRe_0*{d6cyy9QQ(|Ct~WTM1pC3({5qHahk*M*O}IPE6icikx48VZ?!0Oc^FVoq`}eu~ zpRq0MYHaBA-`b_BVID}|oo-bem76;B2zo7j7yz(9JiSY6JTjKz#+w{9mc{&#x}>E? zSS3mY$_|scfP3Mo_F5x;r>y&Mquy*Q1b3eF^*hg3tap~%?@ASeyodYa=dF&k=ZyWy z3C+&C95h|9TAVM~-8y(&xcy0nvl}6B*)j0FOlSz%+bK-}S4;F?P`j55*+ZO0Ogk7D z5q30zE@Nup4lqQoG`L%n{T?qn9&WC94%>J`KU{gHIq?n_L;75kkKyib;^?yXUx6BO zju%DyU(l!Vj(3stJ>!pMZ*NZFd60%oSAD1JUXG0~2GCXpB0Am(YPyhzQda-e)b^+f zzFaEZdVTJRJXPJo%w z$?T;xq^&(XjmO>0bNGsT|1{1UqGHHhasPC;H!oX52(AQ7h9*^npOIRdQbNrS0X5#5G?L4V}WsAYcpq-+JNXhSl)XbxZ)L@5Q+?wm{GAU z9a7X8hAjAo;4r_eOdZfXGL@YpmT|#qECEcPTQ;nsjIkQ;!0}g?T>Zr*Fg}%BZVA)4 zCAzvWr?M&)KEk`t9eyFi_GlPV9a2kj9G(JgiZadd_&Eb~#DyZ%2Zcvrda_A47G&uW z^6TnBK|th;wHSo8ivpScU?AM5HDu2+ayzExMJc@?4{h-c`!b($ExB`ro#vkl<;=BA z961c*n(4OR!ebT*7UV7sqL;rZ3+Z)BYs<1I|9F|TOKebtLPxahl|ZXxj4j!gjj!3*+iSb5Zni&EKVt$S{0?2>A}d@3PSF3LUu)5 z*Y#a1uD6Y!$=_ghsPrOqX!OcIP`IW};tZzx1)h_~mgl;0=n zdP|Te_7)~R?c9s>W(-d!@nzQyxqakrME{Tn@>0G)kqV<4;{Q?Z-M)E-|IFLTc}WQr z1Qt;u@_dN2kru_9HMtz8MQx1aDYINH&3<+|HA$D#sl3HZ&YsjfQBv~S>4=u z7gA2*X6_cI$2}JYLIq`4NeXTz6Q3zyE717#>RD&M?0Eb|KIyF;xj;+3#DhC-xOj~! z$-Kx#pQ)_$eHE3Zg?V>1z^A%3jW0JBnd@z`kt$p@lch?A9{j6hXxt$(3|b>SZiBxOjA%LsIPii{=o(B`yRJ>OK;z_ELTi8xHX)il z--qJ~RWsZ%9KCNuRNUypn~<2+mQ=O)kd59$Lul?1ev3c&Lq5=M#I{ zJby%%+Top_ocqv!jG6O6;r0Xwb%vL6SP{O(hUf@8riADSI<|y#g`D)`x^vHR4!&HY`#TQMqM`Su}2(C|KOmG`wyK>uh@3;(prdL{2^7T3XFGznp{-sNLLJH@mh* z^vIyicj9yH9(>~I-Ev7p=yndfh}l!;3Q65}K}()(jp|tC;{|Ln1a+2kbctWEX&>Vr zXp5=#pw)@-O6~Q|><8rd0>H-}0Nsc|J6TgCum{XnH2@hFB09FsoZ_ow^Nv@uGgz3# z<6dRDt1>>-!kN58&K1HFrgjTZ^q<>hNI#n8=hP&pKAL4uDcw*J66((I?!pE0fvY6N zu^N=X8lS}(=w$O_jlE(;M9F={-;4R(K5qa=P#ZVW>}J&s$d0?JG8DZJwZcx3{CjLg zJA>q-&=Ekous)vT9J>fbnZYNUtvox|!Rl@e^a6ue_4-_v=(sNB^I1EPtHCFEs!>kK6B@-MS!(B zST${=v9q6q8YdSwk4}@c6cm$`qZ86ipntH8G~51qIlsYQ)+2_Fg1@Y-ztI#aa~tFD_QUxb zU-?g5B}wU@`tnc_l+B^mRogRghXs!7JZS=A;In1|f(1T(+xfIi zvjccLF$`Pkv2w|c5BkSj>>k%`4o6#?ygojkV78%zzz`QFE6nh{(SSJ9NzVdq>^N>X zpg6+8u7i(S>c*i*cO}poo7c9%i^1o&3HmjY!s8Y$5aO(!>u1>-eai0;rK8hVzIh8b zL53WCXO3;=F4_%CxMKRN^;ggC$;YGFTtHtLmX%@MuMxvgn>396~ zEp>V(dbfYjBX^!8CSg>P2c5I~HItbe(dl^Ax#_ldvCh;D+g6-%WD|$@S6}Fvv*eHc zaKxji+OG|_KyMe2D*fhP<3VP0J1gTgs6JZjE{gZ{SO-ryEhh;W237Q0 z{yrDobsM6S`bPMUzr|lT|99m6XDI$RzW4tQ$|@C2RjhBYPliEXFV#M*5G4;Kb|J8E z0IH}-d^S-53kFRZ)ZFrd2%~Sth-6BN?hnMa_PC4gdWyW3q-xFw&L^x>j<^^S$y_3_ zdZxouw%6;^mg#jG@7L!g9Kdw}{w^X9>TOtHgxLLIbfEG^Qf;tD=AXozE6I`XmOF=# zGt$Wl+7L<8^VI-eSK%F%dqXieK^b!Z3yEA$KL}X@>fD9)g@=DGt|=d(9W%8@Y@!{PI@`Nd zyF?Us(0z{*u6|X?D`kKSa}}Q*HP%9BtDEA^buTlI5ihwe)CR%OR46b+>NakH3SDbZmB2X>c8na&$lk zYg$SzY+EXtq2~$Ep_x<~+YVl<-F&_fbayzTnf<7?Y-un3#+T~ahT+eW!l83sofNt; zZY`eKrGqOux)+RMLgGgsJdcA3I$!#zy!f<$zL0udm*?M5w=h$Boj*RUk8mDPVUC1RC8A`@7PgoBIU+xjB7 z25vky+^7k_|1n1&jKNZkBWUu1VCmS}a|6_+*;fdUZAaIR4G!wv=bAZEXBhcjch6WH zdKUr&>z^P%_LIx*M&x{!w|gij?nigT8)Ol3VicXRL0tU}{vp2fi!;QkVc#I38op3O z=q#WtNdN{x)OzmH;)j{cor)DQ;2%m>xMu_KmTisaeCC@~rQwQTfMml7FZ_ zU2AR8yCY_CT$&IAn3n#Acf*VKzJD8-aphMg(12O9cv^AvLQ9>;f!4mjyxq_a%YH2+{~=3TMNE1 z#r3@ynnZ#p?RCkPK36?o{ILiHq^N5`si(T_cKvO9r3^4pKG0AgDEB@_72(2rvU^-; z%&@st2+HjP%H)u50t81p>(McL{`dTq6u-{JM|d=G1&h-mtjc2{W0%*xuZVlJpUSP-1=U6@5Q#g(|nTVN0icr-sdD~DWR=s}`$#=Wa zt5?|$`5`=TWZevaY9J9fV#Wh~Fw@G~0vP?V#Pd=|nMpSmA>bs`j2e{)(827mU7rxM zJ@ku%Xqhq!H)It~yXm=)6XaPk=$Rpk*4i4*aSBZe+h*M%w6?3&0>>|>GHL>^e4zR!o%aGzUn40SR+TdN%=Dbn zsRfXzGcH#vjc-}7v6yRhl{V5PhE-r~)dnmNz=sDt?*1knNZ>xI5&vBwrosF#qRL-Y z;{W)4W&cO0XMKy?{^d`Xh(2B?j0ioji~G~p5NQJyD6vouyoFE9w@_R#SGZ1DR4GnN z{b=sJ^8>2mq3W;*u2HeCaKiCzK+yD!^i6QhTU5npwO+C~A#5spF?;iuOE>o&p3m1C zmT$_fH8v+5u^~q^ic#pQN_VYvU>6iv$tqx#Sulc%|S7f zshYrWq7IXCiGd~J(^5B1nGMV$)lo6FCTm1LshfcOrGc?HW7g>pV%#4lFbnt#94&Rg{%Zbg;Rh?deMeOP(du*)HryI zCdhO$3|SeaWK<>(jSi%qst${Z(q@{cYz7NA^QO}eZ$K@%YQ^Dt4CXzmvx~lLG{ef8 zyckIVSufk>9^e_O7*w2z>Q$8me4T~NQDq=&F}Ogo#v1u$0xJV~>YS%mLVYqEf~g*j zGkY#anOI9{(f4^v21OvYG<(u}UM!-k;ziH%GOVU1`$0VuO@Uw2N{$7&5MYjTE?Er) zr?oZAc~Xc==KZx-pmoh9KiF_JKU7u0#b_}!dWgC>^fmbVOjuiP2FMq5OD9+4TKg^2 z>y6s|sQhI`=fC<>BnQYV433-b+jBi+N6unz%6EQR%{8L#=4sktI>*3KhX+qAS>+K#}y5KnJ8YuOuzG(Ea5;$*1P$-9Z+V4guyJ#s) zRPH(JPN;Es;H72%c8}(U)CEN}Xm>HMn{n!d(=r*YP0qo*^APwwU5YTTeHKy#85Xj< zEboiH=$~uIVMPg!qbx~0S=g&LZ*IyTJG$hTN zv%2>XF``@S9lnLPC?|myt#P)%7?%e_j*aU4TbTyxO|3!h%=Udp;THL+^oPp<6;TLlIOa$&xeTG_a*dbRDy+(&n1T=MU z+|G5{2UprrhN^AqODLo$9Z2h(3^wtdVIoSk@}wPajVgIoZipRft}^L)2Y@mu;X-F{LUw|s7AQD-0!otW#W9M@A~08`o%W;Bq-SOQavG*e-sy8) zwtaucR0+64B&Pm++-m56MQ$@+t{_)7l-|`1kT~1s!swfc4D9chbawUt`RUOdoxU|j z$NE$4{Ysr@2Qu|K8pD37Yv&}>{_I5N49a@0<@rGHEs}t zwh_+9T0oh@ptMbjy*kbz<&3>LGR-GNsT8{x1g{!S&V7{5tPYX(GF>6qZh>O&F)%_I zkPE-pYo3dayjNQAG+xrI&yMZy590FA1unQ*k*Zfm#f9Z5GljOHBj-B83KNIP1a?<^1vOhDJkma0o- zs(TP=@e&s6fRrU(R}{7eHL*(AElZ&80>9;wqj{|1YQG=o2Le-m!UzUd?Xrn&qd8SJ0mmEYtW;t(;ncW_j6 zGWh4y|KMK^s+=p#%fWxjXo434N`MY<8W`tNH-aM6x{@o?D3GZM&+6t4V3I*3fZd{a z0&D}DI?AQl{W*?|*%M^D5{E>V%;=-r&uQ>*e)cqVY52|F{ptA*`!iS=VKS6y4iRP6 zKUA!qpElT5vZvN}U5k-IpeNOr6KF`-)lN1r^c@HnT#RlZbi(;yuvm9t-Noh5AfRxL@j5dU-X37(?S)hZhRDbf5cbhDO5nSX@WtApyp` zT$5IZ*4*)h8wShkPI45stQH2Y7yD*CX^Dh@B%1MJSEn@++D$AV^ttKXZdQMU`rxiR z+M#45Z2+{N#uR-hhS&HAMFK@lYBWOzU^Xs-BlqQDyN4HwRtP2$kks@UhAr@wlJii%Rq?qy25?Egs z*a&iAr^rbJWlv+pYAVUq9lor}#Cm|D$_ev2d2Ko}`8kuP(ljz$nv3OCDc7zQp|j6W zbS6949zRvj`bhbO(LN3}Pq=$Ld3a_*9r_24u_n)1)}-gRq?I6pdHPYHgIsn$#XQi~ z%&m_&nnO9BKy;G%e~fa7i9WH#MEDNQ8WCXhqqI+oeE5R7hLZT_?7RWVzEGZNz4*Po ze&*a<^Q*ze72}UM&$c%FuuEIN?EQ@mnILwyt;%wV-MV+|d%>=;3f0(P46;Hwo|Wr0 z>&FS9CCb{?+lDpJMs`95)C$oOQ}BSQEv0Dor%-Qj0@kqlIAm1-qSY3FCO2j$br7_w zlpRfAWz3>Gh~5`Uh?ER?@?r0cXjD0WnTx6^AOFii;oqM?|M9QjHd*GK3WwA}``?dK15`ZvG>_nB2pSTGc{n2hYT6QF^+&;(0c`{)*u*X7L_ zaxqyvVm$^VX!0YdpSNS~reC+(uRqF2o>jqIJQkC&X>r8|mBHvLaduM^Mh|OI60<;G zDHx@&jUfV>cYj5+fAqvv(XSmc(nd@WhIDvpj~C#jhZ6@M3cWF2HywB1yJv2#=qoY| zIiaxLsSQa7w;4YE?7y&U&e6Yp+2m(sb5q4AZkKtey{904rT08pJpanm->Z75IdvW^ z!kVBy|CIUZn)G}92_MgoLgHa?LZJDp_JTbAEq8>6a2&uKPF&G!;?xQ*+{TmNB1H)_ z-~m@CTxDry_-rOM2xwJg{fcZ41YQDh{DeI$4!m8c;6XtFkFyf`fOsREJ`q+Bf4nS~ zKDYs4AE7Gugv?X)tu4<-M8ag{`4pfQ14z<(8MYQ4u*fl*DCpq66+Q1-gxNCQ!c$me zyTrmi7{W-MGP!&S-_qJ%9+e08_9`wWGG{i5yLJ;8qbt-n_0*Q371<^u@tdz|;>fPW zE=&q~;wVD_4IQ^^jyYX;2shIMiYdvIpIYRT>&I@^{kL9Ka2ECG>^l>Ae!GTn{r~o= z|I9=J#wNe)zYRqGZ7Q->L{dfewyC$ZYcLaoNormZ3*gfM=da*{heC)&46{yTS!t10 zn_o0qUbQOs$>YuY>YHi|NG^NQG<_@jD&WnZcW^NTC#mhVE7rXlZ=2>mZkx{bc=~+2 z{zVH=Xs0`*K9QAgq9cOtfQ^BHh-yr=qX8hmW*0~uCup89IJMvWy%#yt_nz@6dTS)L{O3vXye< zW4zUNb6d|Tx`XIVwMMgqnyk?c;Kv`#%F0m^<$9X!@}rI##T{iXFC?(ui{;>_9Din8 z7;(754q!Jx(~sb!6+6Lf*l{fqD7GW*v{>3wp+)@wq2abADBK!kI8To}7zooF%}g-z zJ1-1lp-lQI6w^bov9EfhpxRI}`$PTpJI3uo@ZAV729JJ2Hs68{r$C0U=!d$Bm+s(p z8Kgc(Ixf4KrN%_jjJjTx5`&`Ak*Il%!}D_V)GM1WF!k$rDJ-SudXd_Xhl#NWnET&e-P!rH~*nNZTzxj$?^oo3VWc-Ay^`Phze3(Ft!aNW-f_ zeMy&BfNCP^-FvFzR&rh!w(pP5;z1$MsY9Voozmpa&A}>|a{eu}>^2s)So>&kmi#7$ zJS_-DVT3Yi(z+ruKbffNu`c}s`Uo`ORtNpUHa6Q&@a%I%I;lm@ea+IbCLK)IQ~)JY zp`kdQ>R#J*i&Ljer3uz$m2&Un9?W=Ue|hHv?xlM`I&*-M;2{@so--0OAiraN1TLra z>EYQu#)Q@UszfJj&?kr%RraFyi*eG+HD_(!AWB;hPgB5Gd-#VDRxxv*VWMY0hI|t- zR=;TL%EKEg*oet7GtmkM zgH^y*1bfJ*af(_*S1^PWqBVVbejFU&#m`_69IwO!aRW>Rcp~+7w^ptyu>}WFYUf;) zZrgs;EIN9$Immu`$umY%$I)5INSb}aV-GDmPp!d_g_>Ar(^GcOY%2M)Vd7gY9llJR zLGm*MY+qLzQ+(Whs8-=ty2l)G9#82H*7!eo|B6B$q%ak6eCN%j?{SI9|K$u3)ORoz zw{bAGaWHrMb|X^!UL~_J{jO?l^}lI^|7jIn^p{n%JUq9{tC|{GM5Az3SrrPkuCt_W zq#u0JfDw{`wAq`tAJmq~sz`D_P-8qr>kmms>I|);7Tn zLl^n*Ga7l=U)bQmgnSo5r_&#Pc=eXm~W75X9Cyy0WDO|fbSn5 zLgpFAF4fa90T-KyR4%%iOq6$6BNs@3ZV<~B;7V=u zdlB8$lpe`w-LoS;0NXFFu@;^^bc?t@r3^XTe*+0;o2dt&>eMQeDit(SfDxYxuA$uS z**)HYK7j!vJVRNfrcokVc@&(ke5kJzvi};Lyl7@$!`~HM$T!`O`~MQ1k~ZH??fQr zNP)33uBWYnTntKRUT*5lu&8*{fv>syNgxVzEa=qcKQ86Vem%Lpae2LM=TvcJLs?`=o9%5Mh#k*_7zQD|U7;A%=xo^_4+nX{~b1NJ6@ z*=55;+!BIj1nI+)TA$fv-OvydVQB=KK zrGWLUS_Chm$&yoljugU=PLudtJ2+tM(xj|E>Nk?c{-RD$sGYNyE|i%yw>9gPItE{ zD|BS=M>V^#m8r?-3swQofD8j$h-xkg=F+KM%IvcnIvc)y zl?R%u48Jeq7E*26fqtLe_b=9NC_z|axW#$e0adI#r(Zsui)txQ&!}`;;Z%q?y2Kn! zXzFNe+g7+>>`9S0K1rmd)B_QVMD?syc3e0)X*y6(RYH#AEM9u?V^E0GHlAAR)E^4- zjKD+0K=JKtf5DxqXSQ!j?#2^ZcQoG5^^T+JaJa3GdFeqIkm&)dj76WaqGukR-*&`13ls8lU2ayVIR%;79HYAr5aEhtYa&0}l}eAw~qKjUyz4v*At z?})QplY`3cWB6rl7MI5mZx&#%I0^iJm3;+J9?RA(!JXjl?(XgmA-D#2cY-^?g1c*Q z3GVLh!8Jhe;QqecbMK#XIJxKMb=6dcs?1vbb?@ov-raj`hnYO92y8pv@>RVr=9Y-F zv`BK)9R6!m4Pfllu4uy0WBL+ZaUFFzbZZtI@J8{OoQ^wL-b$!FpGT)jYS-=vf~b-@ zIiWs7j~U2yI=G5;okQz%gh6}tckV5wN;QDbnu|5%%I(#)8Q#)wTq8YYt$#f9=id;D zJbC=CaLUyDIPNOiDcV9+=|$LE9v2;Qz;?L+lG{|g&iW9TI1k2_H;WmGH6L4tN1WL+ zYfSVWq(Z_~u~U=g!RkS|YYlWpKfZV!X%(^I3gpV%HZ_{QglPSy0q8V+WCC2opX&d@eG2BB#(5*H!JlUzl$DayI5_J-n zF@q*Fc-nlp%Yt;$A$i4CJ_N8vyM5fNN`N(CN53^f?rtya=p^MJem>JF2BEG|lW|E) zxf)|L|H3Oh7mo=9?P|Y~|6K`B3>T)Gw`0ESP9R`yKv}g|+qux(nPnU(kQ&&x_JcYg9+6`=; z-EI_wS~l{T3K~8}8K>%Ke`PY!kNt415_x?^3QOvX(QUpW&$LXKdeZM-pCI#%EZ@ta zv(q-(xXIwvV-6~(Jic?8<7ain4itN>7#AqKsR2y(MHMPeL)+f+v9o8Nu~p4ve*!d3 z{Lg*NRTZsi;!{QJknvtI&QtQM_9Cu%1QcD0f!Fz+UH4O#8=hvzS+^(e{iG|Kt7C#u zKYk7{LFc+9Il>d6)blAY-9nMd(Ff0;AKUo3B0_^J&ESV@4UP8PO0no7G6Gp_;Z;YnzW4T-mCE6ZfBy(Y zXOq^Of&?3#Ra?khzc7IJT3!%IKK8P(N$ST47Mr=Gv@4c!>?dQ-&uZihAL1R<_(#T8Y`Ih~soL6fi_hQmI%IJ5qN995<{<@_ z;^N8AGQE+?7#W~6X>p|t<4@aYC$-9R^}&&pLo+%Ykeo46-*Yc(%9>X>eZpb8(_p{6 zwZzYvbi%^F@)-}5%d_z^;sRDhjqIRVL3U3yK0{Q|6z!PxGp?|>!%i(!aQODnKUHsk^tpeB<0Qt7`ZBlzRIxZMWR+|+ z3A}zyRZ%0Ck~SNNov~mN{#niO**=qc(faGz`qM16H+s;Uf`OD1{?LlH!K!+&5xO%6 z5J80-41C{6)j8`nFvDaeSaCu_f`lB z_Y+|LdJX=YYhYP32M556^^Z9MU}ybL6NL15ZTV?kfCFfpt*Pw5FpHp#2|ccrz#zoO zhs=+jQI4fk*H0CpG?{fpaSCmXzU8bB`;kCLB8T{_3t>H&DWj0q0b9B+f$WG=e*89l zzUE)b9a#aWsEpgnJqjVQETpp~R7gn)CZd$1B8=F*tl+(iPH@s9jQtE33$dBDOOr=% ziOpR8R|1eLI?Rn*d+^;_U#d%bi$|#obe0(-HdB;K>=Y=mg{~jTA_WpChe8QquhF`N z>hJ}uV+pH`l_@d>%^KQNm*$QNJ(lufH>zv9M`f+C-y*;hAH(=h;kp@eL=qPBeXrAo zE7my75EYlFB30h9sdt*Poc9)2sNP9@K&4O7QVPQ^m$e>lqzz)IFJWpYrpJs)Fcq|P z5^(gnntu!+oujqGpqgY_o0V&HL72uOF#13i+ngg*YvPcqpk)Hoecl$dx>C4JE4DWp z-V%>N7P-}xWv%9Z73nn|6~^?w$5`V^xSQbZceV<_UMM&ijOoe{Y^<@3mLSq_alz8t zr>hXX;zTs&k*igKAen1t1{pj94zFB;AcqFwV)j#Q#Y8>hYF_&AZ?*ar1u%((E2EfZ zcRsy@s%C0({v=?8oP=DML`QsPgzw3|9|C22Y>;=|=LHSm7~+wQyI|;^WLG0_NSfrf zamq!5%EzdQ&6|aTP2>X=Z^Jl=w6VHEZ@=}n+@yeu^ke2Yurrkg9up3g$0SI8_O-WQu$bCsKc(juv|H;vz6}%7ONww zKF%!83W6zO%0X(1c#BM}2l^ddrAu^*`9g&1>P6m%x{gYRB)}U`40r>6YmWSH(|6Ic zH~QNgxlH*;4jHg;tJiKia;`$n_F9L~M{GiYW*sPmMq(s^OPOKm^sYbBK(BB9dOY`0 z{0!=03qe*Sf`rcp5Co=~pfQyqx|umPHj?a6;PUnO>EZGb!pE(YJgNr{j;s2+nNV(K zDi#@IJ|To~Zw)vqGnFwb2}7a2j%YNYxe2qxLk)VWJIux$BC^oII=xv-_}h@)Vkrg1kpKokCmX({u=lSR|u znu_fA0PhezjAW{#Gu0Mdhe8F4`!0K|lEy+<1v;$ijSP~A9w%q5-4Ft|(l7UqdtKao zs|6~~nmNYS>fc?Nc=yzcvWNp~B0sB5ForO5SsN(z=0uXxl&DQsg|Y?(zS)T|X``&8 z*|^p?~S!vk8 zg>$B{oW}%rYkgXepmz;iqCKY{R@%@1rcjuCt}%Mia@d8Vz5D@LOSCbM{%JU#cmIp! z^{4a<3m%-p@JZ~qg)Szb-S)k{jv92lqB(C&KL(jr?+#ES5=pUH$(;CO9#RvDdErmW z3(|f{_)dcmF-p*D%qUa^yYngNP&Dh2gq5hr4J!B5IrJ?ODsw@*!0p6Fm|(ebRT%l) z#)l22@;4b9RDHl1ys$M2qFc;4BCG-lp2CN?Ob~Be^2wQJ+#Yz}LP#8fmtR%o7DYzoo1%4g4D+=HonK7b!3nvL0f1=oQp93dPMTsrjZRI)HX-T}ApZ%B#B;`s? z9Kng{|G?yw7rxo(T<* z1+O`)GNRmXq3uc(4SLX?fPG{w*}xDCn=iYo2+;5~vhWUV#e5e=Yfn4BoS@3SrrvV9 zrM-dPU;%~+3&>(f3sr$Rcf4>@nUGG*vZ~qnxJznDz0irB(wcgtyATPd&gSuX^QK@+ z)7MGgxj!RZkRnMSS&ypR94FC$;_>?8*{Q110XDZ)L);&SA8n>72s1#?6gL>gydPs` zM4;ert4-PBGB@5E` zBaWT=CJUEYV^kV%@M#3(E8>g8Eg|PXg`D`;K8(u{?}W`23?JgtNcXkUxrH}@H_4qN zw_Pr@g%;CKkgP(`CG6VTIS4ZZ`C22{LO{tGi6+uPvvHkBFK|S6WO{zo1MeK$P zUBe}-)3d{55lM}mDVoU@oGtPQ+a<=wwDol}o=o1z*)-~N!6t09du$t~%MlhM9B5~r zy|zs^LmEF#yWpXZq!+Nt{M;bE%Q8z7L8QJDLie^5MKW|I1jo}p)YW(S#oLf(sWn~* zII>pocNM5#Z+-n2|495>?H?*oyr0!SJIl(}q-?r`Q;Jbqqr4*_G8I7agO298VUr9x z8ZcHdCMSK)ZO@Yr@c0P3{`#GVVdZ{zZ$WTO zuvO4ukug&& ze#AopTVY3$B>c3p8z^Yyo8eJ+(@FqyDWlR;uxy0JnSe`gevLF`+ZN6OltYr>oN(ZV z>76nIiVoll$rDNkck6_eh%po^u16tD)JXcii|#Nn(7=R9mA45jz>v}S%DeMc(%1h> zoT2BlF9OQ080gInWJ3)bO9j$ z`h6OqF0NL4D3Kz?PkE8nh;oxWqz?<3_!TlN_%qy*T7soZ>Pqik?hWWuya>T$55#G9 zxJv=G&=Tm4!|p1#!!hsf*uQe}zWTKJg`hkuj?ADST2MX6fl_HIDL7w`5Dw1Btays1 zz*aRwd&>4*H%Ji2bt-IQE$>sbCcI1Poble0wL`LAhedGRZp>%>X6J?>2F*j>`BX|P zMiO%!VFtr_OV!eodgp-WgcA-S=kMQ^zihVAZc!vdx*YikuDyZdHlpy@Y3i!r%JI85$-udM6|7*?VnJ!R)3Qfm4mMm~Z#cvNrGUy|i0u zb|(7WsYawjBK0u1>@lLhMn}@X>gyDlx|SMXQo|yzkg-!wIcqfGrA!|t<3NC2k` zq;po50dzvvHD>_mG~>W0iecTf@3-)<$PM5W@^yMcu@U;)(^eu@e4jAX7~6@XrSbIE zVG6v2miWY^g8bu5YH$c2QDdLkg2pU8xHnh`EUNT+g->Q8Tp4arax&1$?CH($1W&*} zW&)FQ>k5aCim$`Ph<9Zt?=%|pz&EX@_@$;3lQT~+;EoD(ho|^nSZDh*M0Z&&@9T+e zHYJ;xB*~UcF^*7a_T)9iV5}VTYKda8n*~PSy@>h7c(mH~2AH@qz{LMQCb+-enMhX} z2k0B1JQ+6`?Q3Lx&(*CBQOnLBcq;%&Nf<*$CX2<`8MS9c5zA!QEbUz1;|(Ua%CiuL zF2TZ>@t7NKQ->O#!;0s;`tf$veXYgq^SgG>2iU9tCm5&^&B_aXA{+fqKVQ*S9=58y zddWqy1lc$Y@VdB?E~_B5w#so`r552qhPR649;@bf63_V@wgb!>=ij=%ptnsq&zl8^ zQ|U^aWCRR3TnoKxj0m0QL2QHM%_LNJ(%x6aK?IGlO=TUoS%7YRcY{!j(oPcUq{HP=eR1>0o^(KFl-}WdxGRjsT);K8sGCkK0qVe{xI`# z@f+_kTYmLbOTxRv@wm2TNBKrl+&B>=VaZbc(H`WWLQhT=5rPtHf)#B$Q6m1f8We^)f6ylbO=t?6Y;{?&VL|j$VXyGV!v8eceRk zl>yOWPbk%^wv1t63Zd8X^Ck#12$*|yv`v{OA@2;-5Mj5sk#ptfzeX(PrCaFgn{3*hau`-a+nZhuJxO;Tis51VVeKAwFML#hF9g26NjfzLs8~RiM_MFl1mgDOU z=ywk!Qocatj1Q1yPNB|FW>!dwh=aJxgb~P%%7(Uydq&aSyi?&b@QCBiA8aP%!nY@c z&R|AF@8}p7o`&~>xq9C&X6%!FAsK8gGhnZ$TY06$7_s%r*o;3Y7?CenJUXo#V-Oag z)T$d-V-_O;H)VzTM&v8^Uk7hmR8v0)fMquWHs6?jXYl^pdM#dY?T5XpX z*J&pnyJ<^n-d<0@wm|)2SW9e73u8IvTbRx?Gqfy_$*LI_Ir9NZt#(2T+?^AorOv$j zcsk+t<#!Z!eC|>!x&#l%**sSAX~vFU0|S<;-ei}&j}BQ#ekRB-;c9~vPDIdL5r{~O zMiO3g0&m-O^gB}<$S#lCRxX@c3g}Yv*l)Hh+S^my28*fGImrl<-nbEpOw-BZ;WTHL zgHoq&ftG|~ouV<>grxRO6Z%{!O+j`Cw_4~BIzrjpkdA5jH40{1kDy|pEq#7`$^m*? zX@HxvW`e}$O$mJvm+65Oc4j7W@iVe)rF&-}R>KKz>rF&*Qi3%F0*tz!vNtl@m8L9= zyW3%|X}0KsW&!W<@tRNM-R>~~QHz?__kgnA(G`jWOMiEaFjLzCdRrqzKlP1vYLG`Y zh6_knD3=9$weMn4tBD|5=3a9{sOowXHu(z5y^RYrxJK z|L>TUvbDuO?3=YJ55N5}Kj0lC(PI*Te0>%eLNWLnawD54geX5>8AT(oT6dmAacj>o zC`Bgj-RV0m3Dl2N=w3e0>wWWG5!mcal`Xu<(1=2$b{k(;kC(2~+B}a(w;xaHPk^@V zGzDR|pt%?(1xwNxV!O6`JLCM!MnvpbLoHzKziegT_2LLWAi4}UHIo6uegj#WTQLet z9Dbjyr{8NAk+$(YCw~_@Az9N|iqsliRYtR7Q|#ONIV|BZ7VKcW$phH9`ZAlnMTW&9 zIBqXYuv*YY?g*cJRb(bXG}ts-t0*|HXId4fpnI>$9A?+BTy*FG8f8iRRKYRd*VF_$ zoo$qc+A(d#Lx0@`ck>tt5c$L1y7MWohMnZd$HX++I9sHoj5VXZRZkrq`v@t?dfvC} z>0h!c4HSb8%DyeF#zeU@rJL2uhZ^8dt(s+7FNHJeY!TZJtyViS>a$~XoPOhHsdRH* zwW+S*rIgW0qSPzE6w`P$Jv^5dsyT6zoby;@z=^yWLG^x;e557RnndY>ph!qCF;ov$ ztSW1h3@x{zm*IMRx|3lRWeI3znjpbS-0*IL4LwwkWyPF1CRpQK|s42dJ{ddA#BDDqio-Y+mF-XcP-z4bi zAhfXa2=>F0*b;F0ftEPm&O+exD~=W^qjtv&>|%(4q#H=wbA>7QorDK4X3~bqeeXv3 zV1Q<>_Fyo!$)fD`fd@(7(%6o-^x?&+s=)jjbQ2^XpgyYq6`}ISX#B?{I$a&cRcW?X zhx(i&HWq{=8pxlA2w~7521v-~lu1M>4wL~hDA-j(F2;9ICMg+6;Zx2G)ulp7j;^O_ zQJIRUWQam(*@?bYiRTKR<;l_Is^*frjr-Dj3(fuZtK{Sn8F;d*t*t{|_lnlJ#e=hx zT9?&_n?__2mN5CRQ}B1*w-2Ix_=CF@SdX-cPjdJN+u4d-N4ir*AJn&S(jCpTxiAms zzI5v(&#_#YrKR?B?d~ge1j*g<2yI1kp`Lx>8Qb;aq1$HOX4cpuN{2ti!2dXF#`AG{ zp<iD=Z#qN-yEwLwE7%8w8&LB<&6{WO$#MB-|?aEc@S1a zt%_p3OA|kE&Hs47Y8`bdbt_ua{-L??&}uW zmwE7X4Y%A2wp-WFYPP_F5uw^?&f zH%NCcbw_LKx!c!bMyOBrHDK1Wzzc5n7A7C)QrTj_Go#Kz7%+y^nONjnnM1o5Sw(0n zxU&@41(?-faq?qC^kO&H301%|F9U-Qm(EGd3}MYTFdO+SY8%fCMTPMU3}bY7ML1e8 zrdOF?E~1uT)v?UX(XUlEIUg3*UzuT^g@QAxEkMb#N#q0*;r zF6ACHP{ML*{Q{M;+^4I#5bh#c)xDGaIqWc#ka=0fh*_Hlu%wt1rBv$B z%80@8%MhIwa0Zw$1`D;Uj1Bq`lsdI^g_18yZ9XUz2-u6&{?Syd zHGEh-3~HH-vO<)_2^r|&$(q7wG{@Q~un=3)Nm``&2T99L(P+|aFtu1sTy+|gwL*{z z)WoC4rsxoWhz0H$rG|EwhDT z0zcOAod_k_Ql&Y`YV!#&Mjq{2ln|;LMuF$-G#jX_2~oNioTHb4GqFatn@?_KgsA7T z(ouy$cGKa!m}6$=C1Wmb;*O2p*@g?wi-}X`v|QA4bNDU*4(y8*jZy-Ku)S3iBN(0r ztfLyPLfEPqj6EV}xope=?b0Nyf*~vDz-H-Te@B`{ib?~F<*(MmG+8zoYS77$O*3vayg#1kkKN+Bu9J9;Soev<%2S&J zr8*_PKV4|?RVfb#SfNQ;TZC$8*9~@GR%xFl1 z3MD?%`1PxxupvVO>2w#8*zV<-!m&Lis&B>)pHahPQ@I_;rY~Z$1+!4V1jde&L8y0! zha7@F+rOENF{~0$+a~oId0R|_!PhO=8)$>LcO)ca6YeOQs?ZG;`4O`x=Pd??Bl?Qf zgkaNj7X5@3_==zlQ-u6?omteA!_e-6gfDtw6CBnP2o1wo-7U!Y@89rU1HFb|bIr!I z=qIz=AW(}L^m z=I9RiS{DRtTYS6jsnvt1zs)W;kSVFOK|WMyZ@dxs+8{*W9-aTmS79J4R{Cis>EIqS zw+~gJqwz)(!z>)KDyhS{lM*xQ-8mNvo$A=IwGu+iS564tgX`|MeEuis!aN-=7!L&e zhNs;g1MBqDyx{y@AI&{_)+-?EEg|5C*!=OgD#$>HklRVU+R``HYZZq5{F9C0KKo!d z$bE2XC(G=I^YUxYST+Hk>0T;JP_iAvCObcrPV1Eau865w6d^Wh&B?^#h2@J#!M2xp zLGAxB^i}4D2^?RayxFqBgnZ-t`j+~zVqr+9Cz9Rqe%1a)c*keP#r54AaR2*TH^}7j zmJ48DN);^{7+5|+GmbvY2v#qJy>?$B(lRlS#kyodlxA&Qj#9-y4s&|eq$5} zgI;4u$cZWKWj`VU%UY#SH2M$8?PjO-B-rNPMr=8d=-D(iLW#{RWJ}@5#Z#EK=2(&LvfW&{P4_jsDr^^rg9w#B7h`mBwdL9y)Ni;= zd$jFDxnW7n-&ptjnk#<0zmNNt{;_30vbQW!5CQ7SuEjR1be!vxvO53!30iOermrU1 zXhXaen8=4Q(574KO_h$e$^1khO&tQL59=)Dc^8iPxz8+tC3`G$w|yUzkGd%Wg4(3u zJ<&7r^HAaEfG?F8?2I64j4kPpsNQk7qBJa9_hFT;*j;A%H%;QI@QWqJaiOl=;u>G8 zG`5Ow4K5ifd=OS|7F;EFc1+GzLld0RCQxG>Fn?~5Wl5VHJ=$DeR-2zwBgzSrQsGG0 zBqrILuB+_SgLxh~S~^QNHWW(2P;Z?d!Rd1lnEM=z23xPzyrbO_L0k43zruDkrJO*D zlzN(peBMLji`xfgYUirul-7c#3t(*=x6A^KSU-L|$(0pp9A*43#=Q!cu%9ZHP!$J| zSk8k=Z8cl811Vvn(4p8xx+EdKQV(sjC4_mEvlWeuIfwEVcF2LiC{H!oW)LSW=0ul| zT?$5PCc(pf-zKzUH`p7I7coVvCK;Dv-3_c?%~bPz`#ehbfrSrFf{RAz0I5e*W1S)kTW{0gf5X2v2k=S=W{>pr44tQ?o` zih8gE29VGR_SL~YJtcA)lRLozPg!<3Mh(`Hp)5{bclb)reTScXzJ>7{?i^yR@{(^% z#=$BYXPIX%fhgsofP-T`3b<5#V(TTS)^$vlhV&Kn=(LXOTAADIR1v8UqmW5c`n`S% zC8SOW$e?>&0dwKD%Jt{+67PfCLnqX0{8K^(q_^^2#puPYPkJsyXWMa~?V?p5{flYi z-1!uqI2x%puPG)r7b8y+Pc0Z5C%aA6`Q1_?W9k!YbiVVJVJwGLL?)P0M&vo{^IgEE zrX3eTgrJl_AeXYmiciYX9OP?NPN%-7Ji%z3U`-iXX=T~OI0M=ek|5IvIsvXM$%S&v zKw{`Kj(JVc+Pp^?vLKEyoycfnk)Hd>et78P^Z*{#rBY~_>V7>{gtB$0G99nbNBt+r zyXvEg_2=#jjK+YX1A>cj5NsFz9rjB_LB%hhx4-2I73gr~CW_5pD=H|e`?#CQ2)p4& z^v?Dlxm-_j6bO5~eeYFZGjW3@AGkIxY=XB*{*ciH#mjQ`dgppNk4&AbaRYKKY-1CT z>)>?+ME)AcCM7RRZQsH5)db7y!&jY-qHp%Ex9N|wKbN$!86i>_LzaD=f4JFc6Dp(a z%z>%=q(sXlJ=w$y^|tcTy@j%AP`v1n0oAt&XC|1kA`|#jsW(gwI0vi3a_QtKcL+yh z1Y=`IRzhiUvKeZXH6>>TDej)?t_V8Z7;WrZ_7@?Z=HRhtXY+{hlY?x|;7=1L($?t3 z6R$8cmez~LXopZ^mH9=^tEeAhJV!rGGOK@sN_Zc-vmEr;=&?OBEN)8aI4G&g&gdOb zfRLZ~dVk3194pd;=W|Z*R|t{}Evk&jw?JzVERk%JNBXbMDX82q~|bv%!2%wFP9;~-H?={C1sZ( zuDvY5?M8gGX*DyN?nru)UvdL|Rr&mXzgZ;H<^KYvzIlet!aeFM@I?JduKj=!(+ zM7`37KYhd*^MrKID^Y1}*sZ#6akDBJyKna%xK%vLlBqzDxjQ3}jx8PBOmXkvf@B{@ zc#J;~wQ<6{B;``j+B!#7s$zONYdXunbuKvl@zvaWq;`v2&iCNF2=V9Kl|77-mpCp= z2$SxhcN=pZ?V{GW;t6s)?-cNPAyTi&8O0QMGo#DcdRl#+px!h3ayc*(VOGR95*Anj zL0YaiVN2mifzZ){X+fl`Z^P=_(W@=*cIe~BJd&n@HD@;lRmu8cx7K8}wPbIK)GjF> zQGQ2h#21o6b2FZI1sPl}9_(~R|2lE^h}UyM5A0bJQk2~Vj*O)l-4WC4$KZ>nVZS|d zZv?`~2{uPYkc?254B9**q6tS|>We?uJ&wK3KIww|zzSuj>ncI4D~K z1Y6irVFE{?D-|R{!rLhZxAhs+Ka9*-(ltIUgC;snNek4_5xhO}@+r9Sl*5=7ztnXO zAVZLm$Kdh&rqEtdxxrE9hw`aXW1&sTE%aJ%3VL3*<7oWyz|--A^qvV3!FHBu9B-Jj z4itF)3dufc&2%V_pZsjUnN=;s2B9<^Zc83>tzo)a_Q$!B9jTjS->%_h`ZtQPz@{@z z5xg~s*cz`Tj!ls3-hxgnX}LDGQp$t7#d3E}>HtLa12z&06$xEQfu#k=(4h{+p%aCg zzeudlLc$=MVT+|43#CXUtRR%h5nMchy}EJ;n7oHfTq6wN6PoalAy+S~2l}wK;qg9o zcf#dX>ke;z^13l%bwm4tZcU1RTXnDhf$K3q-cK576+TCwgHl&?9w>>_(1Gxt@jXln zt3-Qxo3ITr&sw1wP%}B>J$Jy>^-SpO#3e=7iZrXCa2!N69GDlD{97|S*og)3hG)Lk zuqxK|PkkhxV$FP45%z*1Z?(LVy+ruMkZx|(@1R(0CoS6`7FWfr4-diailmq&Q#ehn zc)b&*&Ub;7HRtFVjL%((d$)M=^6BV@Kiusmnr1_2&&aEGBpbK7OWs;+(`tRLF8x?n zfKJB3tB^F~N`_ak3^exe_3{=aP)3tuuK2a-IriHcWv&+u7p z_yXsd6kyLV@k=(QoSs=NRiKNYZ>%4wAF;2#iu1p^!6>MZUPd;=2LY~l2ydrx10b#OSAlltILY%OKTp{e{ zzNogSk~SJBqi<_wRa#JqBW8Ok=6vb%?#H(hG}Dv98{JST5^SSh>_GQ@UK-0J`6l#E za}X#ud0W?cp-NQE@jAx>NUv65U~%YYS%BC0Cr$5|2_A)0tW;(nqoGJUHG5R`!-{1M-4T{<^pOE!Dvyuu1x7?Wt#YIgq zA$Vwj`St+M#ZxJXXGkepIF6`xL&XPu^qiFlZcX+@fOAdQ9d(h{^xCiAWJ0Ixp~3&E z(WwdT$O$7ez?pw>Jf{`!T-205_zJv+y~$w@XmQ;CiL8d*-x_z~0@vo4|3xUermJ;Q z9KgxjkN8Vh)xZ2xhX0N@{~@^d@BLoYFW%Uys83=`15+YZ%KecmWXjVV2}YbjBonSh zVOwOfI7^gvlC~Pq$QDHMQ6_Pd10OV{q_Zai^Yg({5XysuT`3}~3K*8u>a2FLBQ%#_YT6$4&6(?ZGwDE*C-p8>bM?hj*XOIoj@C!L5) zH1y!~wZ^dX5N&xExrKV>rEJJjkJDq*$K>qMi`Lrq08l4bQW~!Fbxb>m4qMHu6weTiV6_9(a*mZ23kr9AM#gCGE zBXg8#m8{ad@214=#w0>ylE7qL$4`xm!**E@pw484-VddzN}DK2qg&W~?%hcv3lNHx zg(CE<2)N=p!7->aJ4=1*eB%fbAGJcY65f3=cKF4WOoCgVelH$qh0NpIka5J-6+sY* zBg<5!R=I*5hk*CR@$rY6a8M%yX%o@D%{q1Jn=8wAZ;;}ol>xFv5nXvjFggCQ_>N2} zXHiC~pCFG*oEy!h_sqF$^NJIpQzXhtRU`LR0yU;MqrYUG0#iFW4mbHe)zN&4*Wf)G zV6(WGOq~OpEoq##E{rC?!)8ygAaAaA0^`<8kXmf%uIFfNHAE|{AuZd!HW9C^4$xW; zmIcO#ti!~)YlIU4sH(h&s6}PH-wSGtDOZ+%H2gAO(%2Ppdec9IMViuwwWW)qnqblH9xe1cPQ@C zS4W|atjGDGKKQAQlPUVUi1OvGC*Gh2i&gkh0up%u-9ECa7(Iw}k~0>r*WciZyRC%l z7NX3)9WBXK{mS|=IK5mxc{M}IrjOxBMzFbK59VI9k8Yr$V4X_^wI#R^~RFcme2)l!%kvUa zJ{zpM;;=mz&>jLvON5j>*cOVt1$0LWiV>x)g)KKZnhn=%1|2E|TWNfRQ&n?vZxQh* zG+YEIf33h%!tyVBPj>|K!EB{JZU{+k`N9c@x_wxD7z~eFVw%AyU9htoH6hmo0`%kb z55c#c80D%0^*6y|9xdLG$n4Hn%62KIp`Md9Jhyp8)%wkB8<%RlPEwC&FL z;hrH(yRr(Ke$%TZ09J=gGMC3L?bR2F4ZU!}pu)*8@l(d9{v^^(j>y+GF*nGran5*M z{pl5ig0CVsG1etMB8qlF4MDFRkLAg4N=l{Sc*F>K_^AZQc{dSXkvonBI)qEN1*U&? zKqMr?Wu)q9c>U~CZUG+-ImNrU#c`bS?RpvVgWXqSsOJrCK#HNIJ+k_1Iq^QNr(j|~ z-rz67Lf?}jj^9Ik@VIMBU2tN{Ts>-O%5f?=T^LGl-?iC%vfx{}PaoP7#^EH{6HP!( zG%3S1oaiR;OmlKhLy@yLNns`9K?60Zg7~NyT0JF(!$jPrm^m_?rxt~|J2)*P6tdTU z25JT~k4RH9b_1H3-y?X4=;6mrBxu$6lsb@xddPGKA*6O`Cc^>Ul`f9c&$SHFhHN!* zjj=(Jb`P}R%5X@cC%+1ICCRh1^G&u548#+3NpYTVr54^SbFhjTuO-yf&s%r4VIU!lE!j(JzHSc9zRD_fw@CP0pkL(WX6 zn+}LarmQP9ZGF9So^+jr<(LGLlOxGiCsI^SnuC{xE$S;DA+|z+cUk=j^0ipB(WTZ} zR0osv{abBd)HOjc(SAV&pcP@37SLnsbtADj?bT#cPZq|?W1Ar;4Vg5m!l{@{TA~|g zXYOeU`#h-rT@(#msh%%kH>D=`aN}2Rysez?E@R6|@SB(_gS0}HC>83pE`obNA9vsH zSu^r>6W-FSxJA}?oTuH>-y9!pQg|*<7J$09tH=nq4GTx+5($$+IGlO^bptmxy#=)e zuz^beIPpUB_YK^?eb@gu(D%pJJwj3QUk6<3>S>RN^0iO|DbTZNheFX?-jskc5}Nho zf&1GCbE^maIL$?i=nXwi)^?NiK`Khb6A*kmen^*(BI%Kw&Uv4H;<3ib-2UwG{7M&* zn$qyi8wD9cKOuxWhRmFupwLuFn!G5Vj6PZ#GCNJLlTQuQ?bqAYd7Eva5YR~OBbIim zf(6yXS4pei1Bz4w4rrB6Ke~gKYErlC=l9sm*Zp_vwJe7<+N&PaZe|~kYVO%uChefr%G4-=0eSPS{HNf=vB;p~ z5b9O1R?WirAZqcdRn9wtct>$FU2T8p=fSp;E^P~zR!^C!)WHe=9N$5@DHk6(L|7s@ zcXQ6NM9Q~fan1q-u8{ez;RADoIqwkf4|6LfsMZK6h{ZUGYo>vD%JpY<@w;oIN-*sK zxp4@+d{zxe>Z-pH#_)%|d(AC`fa!@Jq)5K8hd71!;CEG|ZI{I2XI`X~n|ae;B!q{I zJDa#T+fRviR&wAN^Sl{z8Ar1LQOF&$rDs18h0{yMh^pZ#hG?c5OL8v07qRZ-Lj5(0 zjFY(S4La&`3IjOT%Jqx4z~08($iVS;M10d@q~*H=Py)xnKt(+G-*o33c7S3bJ8cmwgj45` zU|b7xCoozC!-7CPOR194J-m9N*g`30ToBo!Io?m>T)S{CusNZx0J^Hu6hOmvv;0~W zFHRYJgyRhP1sM_AQ%pkD!X-dPu_>)`8HunR4_v$4T78~R<})-@K2LBt03PBLnjHzuYY)AK?>0TJe9 zmmOjwSL%CTaLYvYlJ~|w?vc*R+$@vEAYghtgGhZ2LyF+UdOn+v^yvD9R%xbU$fUjK{{VQ4VL&&UqAFa>CZuX4kX zJ)njewLWfKXneB+r}Y$`ezzwDoRT3r{9(@=I3-z>8tT)n3whDyi(r*lAnxQJefj_x z-8lc=r!Vua{b}v;LT)oXW>~6Q03~RAp~R}TZq9sGbeUBMS)?ZrJqiu|E&ZE)uN1uL zXcAj3#aEz zzbcCF)+;Hia#OGBvOatkPQfE{*RtBlO1QFVhi+3q0HeuFa*p+Dj)#8Mq9yGtIx%0A znV5EmN(j!&b%kNz4`Vr-)mX_?$ng&M^a6loFO(G3SA!~eBUEY!{~>C|Ht1Q4cw)X5~dPiEYQJNg?B2&P>bU7N(#e5cr8qc7A{a7J9cdMcRx)N|?;$L~O|E)p~ zIC}oi3iLZKb>|@=ApsDAfa_<$0Nm<3nOPdr+8Y@dnb|u2S<7CUmTGKd{G57JR*JTo zb&?qrusnu}jb0oKHTzh42P00C{i^`v+g=n|Q6)iINjWk4mydBo zf0g=ikV*+~{rIUr%MXdz|9ebUP)<@zR8fgeR_rChk0<^^3^?rfr;-A=x3M?*8|RPz z@}DOF`aXXuZGih9PyAbp|DULSw8PJ`54io)ga6JG@Hgg@_Zo>OfJ)8+TIfgqu%877 z@aFykK*+|%@rSs-t*oAzH6Whyr=TpuQ}B0ptSsMg9p8@ZE5A6LfMk1qdsf8T^zkdC3rUhB$`s zBdanX%L3tF7*YZ4^A8MvOvhfr&B)QOWCLJ^02kw5;P%n~5e`sa6MG{E2N^*2ZX@ge zI2>ve##O?I}sWX)UqK^_bRz@;5HWp5{ziyg?QuEjXfMP!j zpr(McSAQz>ME?M-3NSoCn$91#_iNnULp6tD0NN7Z0s#G~-~xWZFWN-%KUVi^yz~-` zn;AeGvjLJ~{1p#^?$>zM4vu=3mjBI$(_tC~NC0o@6<{zS_*3nGfUsHr3Gdgn%XedF zQUP=j5Mb>9=#f7aPl;cm$=I0u*WP}aVE!lCYw2Ht{Z_j9mp1h>dHGKkEZP6f^6O@J zndJ2+rWjxp|3#<2oO=8v!oHMX{|Vb|^G~pU_A6=ckBQvt>o+dpgYy(D=VCj65GE&jJj{&-*iq?z)PHNee&-@Mie~#LD*={ex8h(-)<@|55 zUr(}L?mz#;d|mrD%zrh<-*=;5*7K$B`zPjJ%m2pwr*G6tf8tN%a

_x$+l{{cH8$W#CT diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 0e9a6105..37aef8d3 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip +networkTimeout=10000 zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip diff --git a/gradlew b/gradlew index cccdd3d5..65dcd68d 100755 --- a/gradlew +++ b/gradlew @@ -1,78 +1,129 @@ -#!/usr/bin/env sh +#!/bin/sh + +# +# Copyright © 2015-2021 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ############################################################################## -## -## Gradle start up script for UN*X -## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# ############################################################################## # Attempt to set APP_HOME + # Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >/dev/null -APP_HOME="`pwd -P`" -cd "$SAVED" >/dev/null -APP_NAME="Gradle" -APP_BASE_NAME=`basename "$0"` +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' # Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD="maximum" +MAX_FD=maximum warn () { echo "$*" -} +} >&2 die () { echo echo "$*" echo exit 1 -} +} >&2 # OS specific support (must be 'true' or 'false'). cygwin=false msys=false darwin=false nonstop=false -case "`uname`" in - CYGWIN* ) - cygwin=true - ;; - Darwin* ) - darwin=true - ;; - MINGW* ) - msys=true - ;; - NONSTOP* ) - nonstop=true - ;; +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; esac CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + # Determine the Java command to use to start the JVM. if [ -n "$JAVA_HOME" ] ; then if [ -x "$JAVA_HOME/jre/sh/java" ] ; then # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACMD=$JAVA_HOME/jre/sh/java else - JAVACMD="$JAVA_HOME/bin/java" + JAVACMD=$JAVA_HOME/bin/java fi if [ ! -x "$JAVACMD" ] ; then die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME @@ -81,7 +132,7 @@ Please set the JAVA_HOME variable in your environment to match the location of your Java installation." fi else - JAVACMD="java" + JAVACMD=java which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. Please set the JAVA_HOME variable in your environment to match the @@ -89,84 +140,105 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then - MAX_FD_LIMIT=`ulimit -H -n` - if [ $? -eq 0 ] ; then - if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then - MAX_FD="$MAX_FD_LIMIT" - fi - ulimit -n $MAX_FD - if [ $? -ne 0 ] ; then - warn "Could not set maximum file descriptor limit: $MAX_FD" - fi - else - warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" - fi +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac fi -# For Darwin, add options to specify how the application appears in the dock -if $darwin; then - GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" -fi +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) -# For Cygwin, switch paths to Windows format before running java -if $cygwin ; then - APP_HOME=`cygpath --path --mixed "$APP_HOME"` - CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` - JAVACMD=`cygpath --unix "$JAVACMD"` - - # We build the pattern for arguments to be converted via cygpath - ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` - SEP="" - for dir in $ROOTDIRSRAW ; do - ROOTDIRS="$ROOTDIRS$SEP$dir" - SEP="|" - done - OURCYGPATTERN="(^($ROOTDIRS))" - # Add a user-defined pattern to the cygpath arguments - if [ "$GRADLE_CYGPATTERN" != "" ] ; then - OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" - fi # Now convert the arguments - kludge to limit ourselves to /bin/sh - i=0 - for arg in "$@" ; do - CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` - CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option - - if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition - eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` - else - eval `echo args$i`="\"$arg\"" + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) fi - i=$((i+1)) + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg done - case $i in - (0) set -- ;; - (1) set -- "$args0" ;; - (2) set -- "$args0" "$args1" ;; - (3) set -- "$args0" "$args1" "$args2" ;; - (4) set -- "$args0" "$args1" "$args2" "$args3" ;; - (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; - (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; - (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; - (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; - (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; - esac fi -# Escape application args -save () { - for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done - echo " " -} -APP_ARGS=$(save "$@") - -# Collect all arguments for the java command, following the shell quoting and substitution rules -eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" - -# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong -if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then - cd "$(dirname "$0")" +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" fi +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat index f9553162..93e3f59f 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -1,4 +1,20 @@ -@if "%DEBUG%" == "" @echo off +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%"=="" @echo off @rem ########################################################################## @rem @rem Gradle startup script for Windows @@ -9,19 +25,23 @@ if "%OS%"=="Windows_NT" setlocal set DIRNAME=%~dp0 -if "%DIRNAME%" == "" set DIRNAME=. +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome set JAVA_EXE=java.exe %JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init +if %ERRORLEVEL% equ 0 goto execute echo. echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. @@ -35,7 +55,7 @@ goto fail set JAVA_HOME=%JAVA_HOME:"=% set JAVA_EXE=%JAVA_HOME%/bin/java.exe -if exist "%JAVA_EXE%" goto init +if exist "%JAVA_EXE%" goto execute echo. echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% @@ -45,38 +65,26 @@ echo location of your Java installation. goto fail -:init -@rem Get command-line arguments, handling Windows variants - -if not "%OS%" == "Windows_NT" goto win9xME_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* - :execute @rem Setup the command line set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + @rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* :end @rem End local scope for the variables with windows NT shell -if "%ERRORLEVEL%"=="0" goto mainEnd +if %ERRORLEVEL% equ 0 goto mainEnd :fail rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of rem the _cmd.exe /c_ return code! -if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 -exit /b 1 +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% :mainEnd if "%OS%"=="Windows_NT" endlocal diff --git a/settings.gradle b/settings.gradle index 93cbd925..b359a59d 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,13 +1,11 @@ pluginManagement { repositories { mavenLocal() - maven { - name 'MinecraftForge' - url 'https://maven.minecraftforge.net/' - } - maven { - name 'Garden of Fancy' - url 'https://maven.gofancy.wtf/releases' - } + gradlePluginPortal() + maven { url = 'https://maven.neoforged.net/releases' } } } + +plugins { + id 'org.gradle.toolchains.foojay-resolver-convention' version '0.5.0' +} diff --git a/src/generated/resources/assets/furenikusroads/blockstates/cement.json b/src/generated/resources/assets/furenikusroads/blockstates/cement.json new file mode 100644 index 00000000..25f4a62c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/cement.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/cement" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/clinker.json b/src/generated/resources/assets/furenikusroads/blockstates/clinker.json new file mode 100644 index 00000000..0ac96732 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/clinker.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/clinker" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/crushed_rock.json b/src/generated/resources/assets/furenikusroads/blockstates/crushed_rock.json new file mode 100644 index 00000000..c7e015d6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/crushed_rock.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/crushed_rock" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_1.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_1.json new file mode 100644 index 00000000..598d6faa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_10.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_10.json new file mode 100644 index 00000000..6a0b4531 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_11.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_11.json new file mode 100644 index 00000000..c1a477ff --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_12.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_12.json new file mode 100644 index 00000000..e028fb54 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_13.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_13.json new file mode 100644 index 00000000..919b678b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_14.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_14.json new file mode 100644 index 00000000..f480ccad --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_15.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_15.json new file mode 100644 index 00000000..7ed3dc50 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_16.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_16.json new file mode 100644 index 00000000..7b540b48 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_2.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_2.json new file mode 100644 index 00000000..a21d3337 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_3.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_3.json new file mode 100644 index 00000000..bd2b3302 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_4.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_4.json new file mode 100644 index 00000000..b38425d1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_5.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_5.json new file mode 100644 index 00000000..ec65d2e1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_6.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_6.json new file mode 100644 index 00000000..fd1a0b29 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_7.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_7.json new file mode 100644 index 00000000..a9d2cfb8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_8.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_8.json new file mode 100644 index 00000000..39669e4b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_9.json b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_9.json new file mode 100644 index 00000000..e24e4655 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/dirt_road_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/dirt_road_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_1.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_1.json new file mode 100644 index 00000000..fb6d4c1e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_10.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_10.json new file mode 100644 index 00000000..77942551 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_11.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_11.json new file mode 100644 index 00000000..3492a8bb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_12.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_12.json new file mode 100644 index 00000000..74dd2969 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_13.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_13.json new file mode 100644 index 00000000..e189753d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_14.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_14.json new file mode 100644 index 00000000..1c1a6076 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_15.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_15.json new file mode 100644 index 00000000..afa85595 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_16.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_16.json new file mode 100644 index 00000000..91a62ce5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_2.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_2.json new file mode 100644 index 00000000..06abbdc5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_3.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_3.json new file mode 100644 index 00000000..057610d0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_4.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_4.json new file mode 100644 index 00000000..6bfa3091 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_5.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_5.json new file mode 100644 index 00000000..3b735f57 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_6.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_6.json new file mode 100644 index 00000000..ee0badc2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_7.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_7.json new file mode 100644 index 00000000..6444e0bc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_8.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_8.json new file mode 100644 index 00000000..03dcce08 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/grass_road_9.json b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_9.json new file mode 100644 index 00000000..fcf13081 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/grass_road_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/grass_road_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_1.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_1.json new file mode 100644 index 00000000..51c2e7eb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_10.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_10.json new file mode 100644 index 00000000..8c989e6a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_11.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_11.json new file mode 100644 index 00000000..37895164 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_12.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_12.json new file mode 100644 index 00000000..5c6dab60 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_13.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_13.json new file mode 100644 index 00000000..ef0a087b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_14.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_14.json new file mode 100644 index 00000000..0addb7dc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_15.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_15.json new file mode 100644 index 00000000..11b4bb6f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_16.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_16.json new file mode 100644 index 00000000..84b8cba9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_2.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_2.json new file mode 100644 index 00000000..967cc714 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_3.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_3.json new file mode 100644 index 00000000..a075a3e4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_4.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_4.json new file mode 100644 index 00000000..3e335206 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_5.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_5.json new file mode 100644 index 00000000..868172c8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_6.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_6.json new file mode 100644 index 00000000..33aee7bd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_7.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_7.json new file mode 100644 index 00000000..f23c0039 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_8.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_8.json new file mode 100644 index 00000000..bc82bec5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_9.json b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_9.json new file mode 100644 index 00000000..583adf20 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/gravel_road_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/gravel_road_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/limestone.json b/src/generated/resources/assets/furenikusroads/blockstates/limestone.json new file mode 100644 index 00000000..35605b2b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/limestone.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/limestone" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_1.json new file mode 100644 index 00000000..e23895d5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_10.json new file mode 100644 index 00000000..7576214d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_11.json new file mode 100644 index 00000000..930c9b84 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_12.json new file mode 100644 index 00000000..167f283d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_13.json new file mode 100644 index 00000000..72130ba8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_14.json new file mode 100644 index 00000000..5c51c12e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_15.json new file mode 100644 index 00000000..cc79f829 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_16.json new file mode 100644 index 00000000..1b602408 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_2.json new file mode 100644 index 00000000..8d9194aa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_3.json new file mode 100644 index 00000000..15e27226 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_4.json new file mode 100644 index 00000000..17d48332 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_5.json new file mode 100644 index 00000000..aec2b779 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_6.json new file mode 100644 index 00000000..5633e7c3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_7.json new file mode 100644 index 00000000..79c1ae7d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_8.json new file mode 100644 index 00000000..4a534132 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_9.json new file mode 100644 index 00000000..be55fbbd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_blue_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_blue_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_1.json new file mode 100644 index 00000000..7c88cdf9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_10.json new file mode 100644 index 00000000..f5d7cfaf --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_11.json new file mode 100644 index 00000000..b7cb0477 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_12.json new file mode 100644 index 00000000..59f077a8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_13.json new file mode 100644 index 00000000..8afb1fc4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_14.json new file mode 100644 index 00000000..52a39280 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_15.json new file mode 100644 index 00000000..0f380405 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_16.json new file mode 100644 index 00000000..08dc2113 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_2.json new file mode 100644 index 00000000..89a3fa6b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_3.json new file mode 100644 index 00000000..9972a317 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_4.json new file mode 100644 index 00000000..74a11e7e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_5.json new file mode 100644 index 00000000..c352e938 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_6.json new file mode 100644 index 00000000..fb919b9e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_7.json new file mode 100644 index 00000000..d3168168 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_8.json new file mode 100644 index 00000000..ddc6bff9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_9.json new file mode 100644 index 00000000..1f5facdc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_1_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_1_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_1.json new file mode 100644 index 00000000..f0063173 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_10.json new file mode 100644 index 00000000..b278dba1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_11.json new file mode 100644 index 00000000..76b3690a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_12.json new file mode 100644 index 00000000..5d338c7c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_13.json new file mode 100644 index 00000000..b979f660 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_14.json new file mode 100644 index 00000000..ec2d13bb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_15.json new file mode 100644 index 00000000..c8eb80ad --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_16.json new file mode 100644 index 00000000..6dcbb64c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_2.json new file mode 100644 index 00000000..0acfc204 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_3.json new file mode 100644 index 00000000..03a40801 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_4.json new file mode 100644 index 00000000..9c6499ba --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_5.json new file mode 100644 index 00000000..85d30b61 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_6.json new file mode 100644 index 00000000..b5a78c2d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_7.json new file mode 100644 index 00000000..335ba430 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_8.json new file mode 100644 index 00000000..e7e8dd47 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_9.json new file mode 100644 index 00000000..a298e03a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_concrete_2_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_concrete_2_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_1.json new file mode 100644 index 00000000..027be2e6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_10.json new file mode 100644 index 00000000..c52f1d05 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_11.json new file mode 100644 index 00000000..05762baf --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_12.json new file mode 100644 index 00000000..87a25dd0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_13.json new file mode 100644 index 00000000..c156bd42 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_14.json new file mode 100644 index 00000000..73a273ea --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_15.json new file mode 100644 index 00000000..cae49e72 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_16.json new file mode 100644 index 00000000..50c4adda --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_2.json new file mode 100644 index 00000000..714bc7aa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_3.json new file mode 100644 index 00000000..fe547e6a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_4.json new file mode 100644 index 00000000..2a11b6c5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_5.json new file mode 100644 index 00000000..fec09536 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_6.json new file mode 100644 index 00000000..f42502af --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_7.json new file mode 100644 index 00000000..f94ae53e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_8.json new file mode 100644 index 00000000..d6915039 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_9.json new file mode 100644 index 00000000..51d3d5c3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_dark_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_dark_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_1.json new file mode 100644 index 00000000..3f3755e0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_10.json new file mode 100644 index 00000000..22c80d53 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_11.json new file mode 100644 index 00000000..83263bac --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_12.json new file mode 100644 index 00000000..6bec4ef4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_13.json new file mode 100644 index 00000000..f9fdd781 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_14.json new file mode 100644 index 00000000..a5b44ed4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_15.json new file mode 100644 index 00000000..f06aff02 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_16.json new file mode 100644 index 00000000..baa16c4f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_2.json new file mode 100644 index 00000000..e9cd8cf8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_3.json new file mode 100644 index 00000000..c03e8291 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_4.json new file mode 100644 index 00000000..901d4d9d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_5.json new file mode 100644 index 00000000..28e540f8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_6.json new file mode 100644 index 00000000..fdeab773 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_7.json new file mode 100644 index 00000000..2f6177e9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_8.json new file mode 100644 index 00000000..6d2357db --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_9.json new file mode 100644 index 00000000..4d83167d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_fine_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_fine_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_1.json new file mode 100644 index 00000000..b2264154 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_10.json new file mode 100644 index 00000000..f31dcbe1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_11.json new file mode 100644 index 00000000..bfe3a363 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_12.json new file mode 100644 index 00000000..3116ccd7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_13.json new file mode 100644 index 00000000..681aac0d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_14.json new file mode 100644 index 00000000..37c39f85 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_15.json new file mode 100644 index 00000000..7f23e656 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_16.json new file mode 100644 index 00000000..cb2e5a69 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_2.json new file mode 100644 index 00000000..7f5a63b3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_3.json new file mode 100644 index 00000000..cc4d4185 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_4.json new file mode 100644 index 00000000..4dcd37d5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_5.json new file mode 100644 index 00000000..b8b543f0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_6.json new file mode 100644 index 00000000..94f9bd6f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_7.json new file mode 100644 index 00000000..50f24f18 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_8.json new file mode 100644 index 00000000..670f3e0a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_9.json new file mode 100644 index 00000000..c0565b51 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_green_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_green_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_1.json new file mode 100644 index 00000000..9f27c8eb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_10.json new file mode 100644 index 00000000..fd037f19 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_11.json new file mode 100644 index 00000000..3f4b3ac0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_12.json new file mode 100644 index 00000000..d17c3378 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_13.json new file mode 100644 index 00000000..cdf31064 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_14.json new file mode 100644 index 00000000..b0b49196 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_15.json new file mode 100644 index 00000000..c30e2f75 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_16.json new file mode 100644 index 00000000..19b9de87 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_2.json new file mode 100644 index 00000000..eca4a92d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_3.json new file mode 100644 index 00000000..d869b324 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_4.json new file mode 100644 index 00000000..e000e005 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_5.json new file mode 100644 index 00000000..9b207833 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_6.json new file mode 100644 index 00000000..fbcbe021 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_7.json new file mode 100644 index 00000000..4c616524 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_8.json new file mode 100644 index 00000000..b4f1eb4e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_9.json new file mode 100644 index 00000000..a062cba1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_light_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_light_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_1.json new file mode 100644 index 00000000..e80c8e5f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_10.json new file mode 100644 index 00000000..df230c5b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_11.json new file mode 100644 index 00000000..5df59c59 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_12.json new file mode 100644 index 00000000..38aced5f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_13.json new file mode 100644 index 00000000..8c7f2044 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_14.json new file mode 100644 index 00000000..a48b3936 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_15.json new file mode 100644 index 00000000..3fe8daac --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_16.json new file mode 100644 index 00000000..59f37f0d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_2.json new file mode 100644 index 00000000..a21d192f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_3.json new file mode 100644 index 00000000..bdbfabc1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_4.json new file mode 100644 index 00000000..0ebb9809 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_5.json new file mode 100644 index 00000000..e66107d7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_6.json new file mode 100644 index 00000000..c6663c5b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_7.json new file mode 100644 index 00000000..1e85db2d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_8.json new file mode 100644 index 00000000..a983dedb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_9.json new file mode 100644 index 00000000..c2a86ac6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_1.json new file mode 100644 index 00000000..71945bdd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_10.json new file mode 100644 index 00000000..ae9a1b0e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_11.json new file mode 100644 index 00000000..66390124 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_12.json new file mode 100644 index 00000000..9a4fdf90 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_13.json new file mode 100644 index 00000000..9ad4d62d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_14.json new file mode 100644 index 00000000..b2d27364 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_15.json new file mode 100644 index 00000000..bce5b310 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_16.json new file mode 100644 index 00000000..b4e224ee --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_2.json new file mode 100644 index 00000000..e2fd050b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_3.json new file mode 100644 index 00000000..5c53e3f4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_4.json new file mode 100644 index 00000000..4e900797 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_5.json new file mode 100644 index 00000000..d108f5de --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_6.json new file mode 100644 index 00000000..76227611 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_7.json new file mode 100644 index 00000000..d3401dbe --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_8.json new file mode 100644 index 00000000..b1a3c559 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_9.json new file mode 100644 index 00000000..5b9e3189 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_muddy_dried_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_muddy_dried_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_1.json new file mode 100644 index 00000000..e3ceb07c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_10.json new file mode 100644 index 00000000..f498dfd0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_11.json new file mode 100644 index 00000000..a16e8a4e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_12.json new file mode 100644 index 00000000..8a8d94ec --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_13.json new file mode 100644 index 00000000..535af543 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_14.json new file mode 100644 index 00000000..5932a11b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_15.json new file mode 100644 index 00000000..1a7b4916 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_16.json new file mode 100644 index 00000000..319582ff --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_2.json new file mode 100644 index 00000000..dd41f9a3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_3.json new file mode 100644 index 00000000..2ecd4e73 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_4.json new file mode 100644 index 00000000..246f915c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_5.json new file mode 100644 index 00000000..d162666a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_6.json new file mode 100644 index 00000000..c4a92432 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_7.json new file mode 100644 index 00000000..4fe2bbef --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_8.json new file mode 100644 index 00000000..955f00d7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_9.json new file mode 100644 index 00000000..88e5058c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_pale_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_pale_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_1.json new file mode 100644 index 00000000..c9b9f691 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_10.json new file mode 100644 index 00000000..384d49b8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_11.json new file mode 100644 index 00000000..7d844982 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_12.json new file mode 100644 index 00000000..d2349179 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_13.json new file mode 100644 index 00000000..65053b02 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_14.json new file mode 100644 index 00000000..d8b4de47 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_15.json new file mode 100644 index 00000000..191eddd7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_16.json new file mode 100644 index 00000000..db555aca --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_2.json new file mode 100644 index 00000000..1f3355eb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_3.json new file mode 100644 index 00000000..de8f58e8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_4.json new file mode 100644 index 00000000..b3fe045c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_5.json new file mode 100644 index 00000000..d615893e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_6.json new file mode 100644 index 00000000..60b9d680 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_7.json new file mode 100644 index 00000000..c12d8d40 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_8.json new file mode 100644 index 00000000..0b05501d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_9.json new file mode 100644 index 00000000..4e5c7d3f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_red_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_red_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_1.json new file mode 100644 index 00000000..29c25591 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_10.json new file mode 100644 index 00000000..43eecf95 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_11.json new file mode 100644 index 00000000..cfc1712c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_12.json new file mode 100644 index 00000000..bde0c0a9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_13.json new file mode 100644 index 00000000..350e34c3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_14.json new file mode 100644 index 00000000..b2d9a84d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_15.json new file mode 100644 index 00000000..29c8d0e0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_16.json new file mode 100644 index 00000000..7c6bafec --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_2.json new file mode 100644 index 00000000..963c918f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_3.json new file mode 100644 index 00000000..05463bb1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_4.json new file mode 100644 index 00000000..cd8f10f9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_5.json new file mode 100644 index 00000000..820d7b87 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_6.json new file mode 100644 index 00000000..93dff769 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_7.json new file mode 100644 index 00000000..8fef42aa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_8.json new file mode 100644 index 00000000..7140ee59 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_9.json new file mode 100644 index 00000000..708a6f89 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_standard_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_standard_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_1.json new file mode 100644 index 00000000..8b2839fa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_10.json new file mode 100644 index 00000000..51efa0ad --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_11.json new file mode 100644 index 00000000..58244c97 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_12.json new file mode 100644 index 00000000..6fd07cbd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_13.json new file mode 100644 index 00000000..0a94c3b3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_14.json new file mode 100644 index 00000000..2ed02684 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_15.json new file mode 100644 index 00000000..91c8b468 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_16.json new file mode 100644 index 00000000..e71a68aa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_2.json new file mode 100644 index 00000000..b4c0d9c5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_3.json new file mode 100644 index 00000000..2ef8ad31 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_4.json new file mode 100644 index 00000000..0a604d8e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_5.json new file mode 100644 index 00000000..4f4893d8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_6.json new file mode 100644 index 00000000..a4efcca5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_7.json new file mode 100644 index 00000000..7fdf47de --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_8.json new file mode 100644 index 00000000..ea9b55d5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_9.json new file mode 100644 index 00000000..52c7d696 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_white_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_white_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_1.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_1.json new file mode 100644 index 00000000..51a020fa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_10.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_10.json new file mode 100644 index 00000000..3b61a653 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_11.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_11.json new file mode 100644 index 00000000..8a9ac1ec --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_12.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_12.json new file mode 100644 index 00000000..f85e3aa1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_13.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_13.json new file mode 100644 index 00000000..fe4e744e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_14.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_14.json new file mode 100644 index 00000000..454a61fe --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_15.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_15.json new file mode 100644 index 00000000..944195f0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_16.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_16.json new file mode 100644 index 00000000..a43a5cc7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_2.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_2.json new file mode 100644 index 00000000..73e7b0f8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_3.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_3.json new file mode 100644 index 00000000..96d09a91 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_4.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_4.json new file mode 100644 index 00000000..e16da8d6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_5.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_5.json new file mode 100644 index 00000000..93402e27 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_6.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_6.json new file mode 100644 index 00000000..4c0ddfeb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_7.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_7.json new file mode 100644 index 00000000..c697a913 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_8.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_8.json new file mode 100644 index 00000000..99a89941 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_9.json b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_9.json new file mode 100644 index 00000000..871e74ff --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/road_block_yellow_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/road_block_yellow_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_1.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_1.json new file mode 100644 index 00000000..e66cb916 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_10.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_10.json new file mode 100644 index 00000000..ad68d094 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_11.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_11.json new file mode 100644 index 00000000..42233e2c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_12.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_12.json new file mode 100644 index 00000000..90098c0a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_13.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_13.json new file mode 100644 index 00000000..32885b93 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_14.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_14.json new file mode 100644 index 00000000..561eb02d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_15.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_15.json new file mode 100644 index 00000000..04fe4cd8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_16.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_16.json new file mode 100644 index 00000000..86e78331 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_2.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_2.json new file mode 100644 index 00000000..816a342d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_3.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_3.json new file mode 100644 index 00000000..324a068c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_4.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_4.json new file mode 100644 index 00000000..93dddd68 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_5.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_5.json new file mode 100644 index 00000000..1969641d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_6.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_6.json new file mode 100644 index 00000000..77250bf1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_7.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_7.json new file mode 100644 index 00000000..d018b17e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_8.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_8.json new file mode 100644 index 00000000..a7e0b371 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sand_road_9.json b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_9.json new file mode 100644 index 00000000..b4b10aec --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sand_road_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sand_road_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_1.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_1.json new file mode 100644 index 00000000..d72059ea --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_10.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_10.json new file mode 100644 index 00000000..e5e505ce --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_11.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_11.json new file mode 100644 index 00000000..d47ed45c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_12.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_12.json new file mode 100644 index 00000000..19a18d2c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_13.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_13.json new file mode 100644 index 00000000..5cb1dd40 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_14.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_14.json new file mode 100644 index 00000000..b2fa8537 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_15.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_15.json new file mode 100644 index 00000000..aa62c39e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_16.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_16.json new file mode 100644 index 00000000..3d104938 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_2.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_2.json new file mode 100644 index 00000000..749c02db --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_3.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_3.json new file mode 100644 index 00000000..2c2e8c95 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_4.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_4.json new file mode 100644 index 00000000..6fa9fc2c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_5.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_5.json new file mode 100644 index 00000000..732dd713 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_6.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_6.json new file mode 100644 index 00000000..7a7b7308 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_7.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_7.json new file mode 100644 index 00000000..e1ebde19 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_8.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_8.json new file mode 100644 index 00000000..fe2a9392 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_9.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_9.json new file mode 100644 index 00000000..7412ed0c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_1.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_1.json new file mode 100644 index 00000000..61acf426 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_10.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_10.json new file mode 100644 index 00000000..effc3c19 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_11.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_11.json new file mode 100644 index 00000000..f9bfa071 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_12.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_12.json new file mode 100644 index 00000000..8c8b9094 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_13.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_13.json new file mode 100644 index 00000000..b9daed44 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_14.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_14.json new file mode 100644 index 00000000..26a5f76e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_15.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_15.json new file mode 100644 index 00000000..db422b4d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_16.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_16.json new file mode 100644 index 00000000..b593f0ad --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_2.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_2.json new file mode 100644 index 00000000..392df3d9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_3.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_3.json new file mode 100644 index 00000000..1ed64aee --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_4.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_4.json new file mode 100644 index 00000000..58414e28 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_5.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_5.json new file mode 100644 index 00000000..e0cd6f4a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_6.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_6.json new file mode 100644 index 00000000..5c24e7be --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_7.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_7.json new file mode 100644 index 00000000..c30930fa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_8.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_8.json new file mode 100644 index 00000000..1ae37c94 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_9.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_9.json new file mode 100644 index 00000000..492f578a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_clean_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_clean_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_1.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_1.json new file mode 100644 index 00000000..ddd5e67a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_10.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_10.json new file mode 100644 index 00000000..c5f0648d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_11.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_11.json new file mode 100644 index 00000000..27796188 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_12.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_12.json new file mode 100644 index 00000000..33fb7f15 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_13.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_13.json new file mode 100644 index 00000000..b3fadb23 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_14.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_14.json new file mode 100644 index 00000000..1b582d27 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_15.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_15.json new file mode 100644 index 00000000..b5d30273 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_16.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_16.json new file mode 100644 index 00000000..c9f9660c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_2.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_2.json new file mode 100644 index 00000000..a19bbe16 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_3.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_3.json new file mode 100644 index 00000000..8f083dc5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_4.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_4.json new file mode 100644 index 00000000..a9cd6a60 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_5.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_5.json new file mode 100644 index 00000000..561ce3ca --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_6.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_6.json new file mode 100644 index 00000000..8c163ab9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_7.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_7.json new file mode 100644 index 00000000..00601d3a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_8.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_8.json new file mode 100644 index 00000000..7762e7cb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_9.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_9.json new file mode 100644 index 00000000..97387ebf --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_dark_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_dark_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_1.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_1.json new file mode 100644 index 00000000..baea1039 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_10.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_10.json new file mode 100644 index 00000000..e56c72a4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_11.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_11.json new file mode 100644 index 00000000..918aa0d1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_12.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_12.json new file mode 100644 index 00000000..51e1a98a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_13.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_13.json new file mode 100644 index 00000000..69e3666f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_14.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_14.json new file mode 100644 index 00000000..64e437f0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_15.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_15.json new file mode 100644 index 00000000..0453ff4e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_16.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_16.json new file mode 100644 index 00000000..f01064ac --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_2.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_2.json new file mode 100644 index 00000000..088f384f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_3.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_3.json new file mode 100644 index 00000000..aeacf457 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_4.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_4.json new file mode 100644 index 00000000..f2b937c2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_5.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_5.json new file mode 100644 index 00000000..67ad1760 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_6.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_6.json new file mode 100644 index 00000000..d5c1870c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_7.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_7.json new file mode 100644 index 00000000..4d6091bb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_8.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_8.json new file mode 100644 index 00000000..6279b7ab --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_9.json b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_9.json new file mode 100644 index 00000000..63e99563 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/sidewalk_tan_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/sidewalk_tan_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_1.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_1.json new file mode 100644 index 00000000..7d26d2dd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_1.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_1" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_10.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_10.json new file mode 100644 index 00000000..18c8106e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_10.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_10" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_11.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_11.json new file mode 100644 index 00000000..7494d288 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_11.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_11" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_12.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_12.json new file mode 100644 index 00000000..17e8064f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_12.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_12" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_13.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_13.json new file mode 100644 index 00000000..c1875425 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_13.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_13" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_14.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_14.json new file mode 100644 index 00000000..453b3f32 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_14.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_14" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_15.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_15.json new file mode 100644 index 00000000..e5bdef78 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_15.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_15" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_16.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_16.json new file mode 100644 index 00000000..81637db5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_16.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_16" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_2.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_2.json new file mode 100644 index 00000000..50d1467b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_2.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_2" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_3.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_3.json new file mode 100644 index 00000000..0bf1e481 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_3.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_3" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_4.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_4.json new file mode 100644 index 00000000..a10fe865 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_4.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_4" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_5.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_5.json new file mode 100644 index 00000000..a6ded1bf --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_5.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_5" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_6.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_6.json new file mode 100644 index 00000000..5086d743 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_6.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_6" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_7.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_7.json new file mode 100644 index 00000000..96432041 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_7.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_7" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_8.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_8.json new file mode 100644 index 00000000..eeef4343 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_8.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_8" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/blockstates/stone_road_9.json b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_9.json new file mode 100644 index 00000000..8542dee3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/blockstates/stone_road_9.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "furenikusroads:block/stone_road_9" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/cement.json b/src/generated/resources/assets/furenikusroads/models/block/cement.json new file mode 100644 index 00000000..e960d024 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/cement.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "furenikusroads:block/cement" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/clinker.json b/src/generated/resources/assets/furenikusroads/models/block/clinker.json new file mode 100644 index 00000000..947b51b3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/clinker.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "furenikusroads:block/clinker" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/crushed_rock.json b/src/generated/resources/assets/furenikusroads/models/block/crushed_rock.json new file mode 100644 index 00000000..8dacb8e2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/crushed_rock.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "furenikusroads:block/crushed_rock" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_1.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_1.json new file mode 100644 index 00000000..a116057f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_10.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_10.json new file mode 100644 index 00000000..2feea2f7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_11.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_11.json new file mode 100644 index 00000000..47b361d8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_12.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_12.json new file mode 100644 index 00000000..b2e74305 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_13.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_13.json new file mode 100644 index 00000000..6cdc054d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_14.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_14.json new file mode 100644 index 00000000..517a30a5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_15.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_15.json new file mode 100644 index 00000000..a2c730c1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_16.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_16.json new file mode 100644 index 00000000..1eb82c07 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_2.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_2.json new file mode 100644 index 00000000..a25df1b3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_3.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_3.json new file mode 100644 index 00000000..9a21154e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_4.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_4.json new file mode 100644 index 00000000..6514e0f8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_5.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_5.json new file mode 100644 index 00000000..b81c6bc1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_6.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_6.json new file mode 100644 index 00000000..e9405826 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_7.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_7.json new file mode 100644 index 00000000..441f499a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_8.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_8.json new file mode 100644 index 00000000..5aa6e64b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/dirt_road_9.json b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_9.json new file mode 100644 index 00000000..7a2b77a0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/dirt_road_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "minecraft:block/dirt" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_1.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_1.json new file mode 100644 index 00000000..203e6e9e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_10.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_10.json new file mode 100644 index 00000000..0b8febac --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_11.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_11.json new file mode 100644 index 00000000..1126f156 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_12.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_12.json new file mode 100644 index 00000000..7f28cb40 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_13.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_13.json new file mode 100644 index 00000000..76a1bec0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_14.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_14.json new file mode 100644 index 00000000..4cf487eb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_15.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_15.json new file mode 100644 index 00000000..a44d226b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_16.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_16.json new file mode 100644 index 00000000..7d72c90f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_2.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_2.json new file mode 100644 index 00000000..1131d10d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_3.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_3.json new file mode 100644 index 00000000..232844da --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_4.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_4.json new file mode 100644 index 00000000..a5ca9f8d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_5.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_5.json new file mode 100644 index 00000000..692136ed --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_6.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_6.json new file mode 100644 index 00000000..4e760fb3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_7.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_7.json new file mode 100644 index 00000000..1b9c8152 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_8.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_8.json new file mode 100644 index 00000000..aeb67661 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/grass_road_9.json b/src/generated/resources/assets/furenikusroads/models/block/grass_road_9.json new file mode 100644 index 00000000..4250f430 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/grass_road_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "minecraft:block/grass_block_top" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_1.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_1.json new file mode 100644 index 00000000..e01bd586 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_10.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_10.json new file mode 100644 index 00000000..63c9f346 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_11.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_11.json new file mode 100644 index 00000000..11671378 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_12.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_12.json new file mode 100644 index 00000000..43e7ee8c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_13.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_13.json new file mode 100644 index 00000000..71eaf006 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_14.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_14.json new file mode 100644 index 00000000..997101dc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_15.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_15.json new file mode 100644 index 00000000..759ee7de --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_16.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_16.json new file mode 100644 index 00000000..3dbf547e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_2.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_2.json new file mode 100644 index 00000000..08f53ca5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_3.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_3.json new file mode 100644 index 00000000..51e840e3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_4.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_4.json new file mode 100644 index 00000000..80cfb85f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_5.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_5.json new file mode 100644 index 00000000..058d4ab5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_6.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_6.json new file mode 100644 index 00000000..1f2a93a6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_7.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_7.json new file mode 100644 index 00000000..f3a43b5a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_8.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_8.json new file mode 100644 index 00000000..d0fdd9fb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/gravel_road_9.json b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_9.json new file mode 100644 index 00000000..6f3af860 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/gravel_road_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "minecraft:block/gravel" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/limestone.json b/src/generated/resources/assets/furenikusroads/models/block/limestone.json new file mode 100644 index 00000000..7d7c16b6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/limestone.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "furenikusroads:block/limestone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_1.json new file mode 100644 index 00000000..d3b0d01a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_10.json new file mode 100644 index 00000000..93ddf88e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_11.json new file mode 100644 index 00000000..3fbb7be4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_12.json new file mode 100644 index 00000000..dd6d4e19 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_13.json new file mode 100644 index 00000000..10505b1a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_14.json new file mode 100644 index 00000000..2983eb80 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_15.json new file mode 100644 index 00000000..b0d361d2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_16.json new file mode 100644 index 00000000..78c50e6a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_2.json new file mode 100644 index 00000000..be295b25 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_3.json new file mode 100644 index 00000000..be7da689 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_4.json new file mode 100644 index 00000000..87c80bc5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_5.json new file mode 100644 index 00000000..a12497d2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_6.json new file mode 100644 index 00000000..7a9bcc50 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_7.json new file mode 100644 index 00000000..94938d75 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_8.json new file mode 100644 index 00000000..39002f17 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_9.json new file mode 100644 index 00000000..9943634c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_blue_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_blue" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_1.json new file mode 100644 index 00000000..d69a06f8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_10.json new file mode 100644 index 00000000..6bebd6d7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_11.json new file mode 100644 index 00000000..0a05fede --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_12.json new file mode 100644 index 00000000..85f2a411 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_13.json new file mode 100644 index 00000000..f97804b7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_14.json new file mode 100644 index 00000000..fdffbe86 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_15.json new file mode 100644 index 00000000..1cce150e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_16.json new file mode 100644 index 00000000..fdadcd66 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_2.json new file mode 100644 index 00000000..fb71eeee --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_3.json new file mode 100644 index 00000000..3f7f7603 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_4.json new file mode 100644 index 00000000..1e6d870e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_5.json new file mode 100644 index 00000000..7c0aa30d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_6.json new file mode 100644 index 00000000..e54a336b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_7.json new file mode 100644 index 00000000..03c9fa13 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_8.json new file mode 100644 index 00000000..9c48695b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_9.json new file mode 100644 index 00000000..17bfbab0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_1_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_1" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_1.json new file mode 100644 index 00000000..7dd9647f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_10.json new file mode 100644 index 00000000..a2428c37 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_11.json new file mode 100644 index 00000000..ee62d883 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_12.json new file mode 100644 index 00000000..3201fbca --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_13.json new file mode 100644 index 00000000..408b6825 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_14.json new file mode 100644 index 00000000..f42b0285 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_15.json new file mode 100644 index 00000000..2064ebbb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_16.json new file mode 100644 index 00000000..43f1d4a9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_2.json new file mode 100644 index 00000000..393104f5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_3.json new file mode 100644 index 00000000..7df8f300 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_4.json new file mode 100644 index 00000000..8da14f96 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_5.json new file mode 100644 index 00000000..b2c653f6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_6.json new file mode 100644 index 00000000..2aadaf96 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_7.json new file mode 100644 index 00000000..b56274b8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_8.json new file mode 100644 index 00000000..f7acd376 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_9.json new file mode 100644 index 00000000..25677080 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_concrete_2_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_concrete_2" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_1.json new file mode 100644 index 00000000..7af6e189 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_10.json new file mode 100644 index 00000000..d41f56a7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_11.json new file mode 100644 index 00000000..27cdbbd1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_12.json new file mode 100644 index 00000000..ad721ed8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_13.json new file mode 100644 index 00000000..6d07ccd8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_14.json new file mode 100644 index 00000000..4aa76a2d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_15.json new file mode 100644 index 00000000..15875fb8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_16.json new file mode 100644 index 00000000..8df6c184 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_2.json new file mode 100644 index 00000000..099ffc4e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_3.json new file mode 100644 index 00000000..f80d8940 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_4.json new file mode 100644 index 00000000..6e80b46e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_5.json new file mode 100644 index 00000000..36ff7143 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_6.json new file mode 100644 index 00000000..32b7b5e1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_7.json new file mode 100644 index 00000000..d80c159c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_8.json new file mode 100644 index 00000000..a889a196 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_9.json new file mode 100644 index 00000000..e468adfd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_dark_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_1.json new file mode 100644 index 00000000..21d4b659 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_10.json new file mode 100644 index 00000000..903d2236 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_11.json new file mode 100644 index 00000000..de22f71f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_12.json new file mode 100644 index 00000000..b5265be8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_13.json new file mode 100644 index 00000000..1059a974 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_14.json new file mode 100644 index 00000000..d991d17a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_15.json new file mode 100644 index 00000000..fe7cfb90 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_16.json new file mode 100644 index 00000000..6ca7214f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_2.json new file mode 100644 index 00000000..77cf6927 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_3.json new file mode 100644 index 00000000..1acde16a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_4.json new file mode 100644 index 00000000..60ffca01 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_5.json new file mode 100644 index 00000000..2fc30c39 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_6.json new file mode 100644 index 00000000..5fcb8693 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_7.json new file mode 100644 index 00000000..2103e745 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_8.json new file mode 100644 index 00000000..2b71add9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_9.json new file mode 100644 index 00000000..2714503c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_fine_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_fine" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_1.json new file mode 100644 index 00000000..7c32ee16 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_10.json new file mode 100644 index 00000000..f8701cc3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_11.json new file mode 100644 index 00000000..fbba7434 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_12.json new file mode 100644 index 00000000..23479519 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_13.json new file mode 100644 index 00000000..5530d20a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_14.json new file mode 100644 index 00000000..ffcf8713 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_15.json new file mode 100644 index 00000000..b4b37aac --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_16.json new file mode 100644 index 00000000..d0ca075e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_2.json new file mode 100644 index 00000000..096215c2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_3.json new file mode 100644 index 00000000..6199e691 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_4.json new file mode 100644 index 00000000..fd704505 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_5.json new file mode 100644 index 00000000..39b6c49e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_6.json new file mode 100644 index 00000000..c93aa183 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_7.json new file mode 100644 index 00000000..3f91bcdc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_8.json new file mode 100644 index 00000000..32beab8b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_green_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_9.json new file mode 100644 index 00000000..a862c62a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_green_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_green" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_1.json new file mode 100644 index 00000000..7bf7fe8e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_10.json new file mode 100644 index 00000000..7ab0c73e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_11.json new file mode 100644 index 00000000..f6663209 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_12.json new file mode 100644 index 00000000..9450a886 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_13.json new file mode 100644 index 00000000..2edfe1ab --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_14.json new file mode 100644 index 00000000..d0f8385b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_15.json new file mode 100644 index 00000000..a0505650 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_16.json new file mode 100644 index 00000000..3c62fd50 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_2.json new file mode 100644 index 00000000..a663bae2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_3.json new file mode 100644 index 00000000..4f130bcc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_4.json new file mode 100644 index 00000000..3313711e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_5.json new file mode 100644 index 00000000..7e8e2708 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_6.json new file mode 100644 index 00000000..405967ef --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_7.json new file mode 100644 index 00000000..c6f9cd97 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_8.json new file mode 100644 index 00000000..d044181e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_light_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_9.json new file mode 100644 index 00000000..e7de2532 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_light_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_light" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_1.json new file mode 100644 index 00000000..9fa54033 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_10.json new file mode 100644 index 00000000..105fc1f0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_11.json new file mode 100644 index 00000000..931c1715 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_12.json new file mode 100644 index 00000000..3856bcf2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_13.json new file mode 100644 index 00000000..47716655 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_14.json new file mode 100644 index 00000000..b4ac8c39 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_15.json new file mode 100644 index 00000000..6ee954d7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_16.json new file mode 100644 index 00000000..ecd5c8d9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_2.json new file mode 100644 index 00000000..4eb9857e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_3.json new file mode 100644 index 00000000..04ef5039 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_4.json new file mode 100644 index 00000000..8bb3b10e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_5.json new file mode 100644 index 00000000..c442a34b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_6.json new file mode 100644 index 00000000..8b9b279e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_7.json new file mode 100644 index 00000000..156c9a48 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_8.json new file mode 100644 index 00000000..616b15f6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_9.json new file mode 100644 index 00000000..b4cce540 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_1.json new file mode 100644 index 00000000..d4e2a5f8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_10.json new file mode 100644 index 00000000..a622f971 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_11.json new file mode 100644 index 00000000..7d8289e2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_12.json new file mode 100644 index 00000000..b4ee5207 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_13.json new file mode 100644 index 00000000..749cc266 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_14.json new file mode 100644 index 00000000..f0d53002 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_15.json new file mode 100644 index 00000000..d06d1994 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_16.json new file mode 100644 index 00000000..423655f3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_2.json new file mode 100644 index 00000000..85b16838 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_3.json new file mode 100644 index 00000000..e8ac45f1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_4.json new file mode 100644 index 00000000..ce2c9064 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_5.json new file mode 100644 index 00000000..4a8c02c2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_6.json new file mode 100644 index 00000000..91fc41d2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_7.json new file mode 100644 index 00000000..340fee2c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_8.json new file mode 100644 index 00000000..df5845f5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_9.json new file mode 100644 index 00000000..dc7e7f58 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_muddy_dried_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_muddy_dried" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_1.json new file mode 100644 index 00000000..cd5ac014 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_10.json new file mode 100644 index 00000000..ea6cc8cc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_11.json new file mode 100644 index 00000000..cca1a2f6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_12.json new file mode 100644 index 00000000..9ad4eb29 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_13.json new file mode 100644 index 00000000..b3da2cc5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_14.json new file mode 100644 index 00000000..71890373 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_15.json new file mode 100644 index 00000000..388aa359 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_16.json new file mode 100644 index 00000000..7f471532 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_2.json new file mode 100644 index 00000000..f2f66db2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_3.json new file mode 100644 index 00000000..f17905ee --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_4.json new file mode 100644 index 00000000..e4da3059 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_5.json new file mode 100644 index 00000000..0cc114ee --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_6.json new file mode 100644 index 00000000..f3053b41 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_7.json new file mode 100644 index 00000000..a30dba39 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_8.json new file mode 100644 index 00000000..4a5892bb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_9.json new file mode 100644 index 00000000..6c13cc0a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_pale_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_pale" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_1.json new file mode 100644 index 00000000..d8c35fc6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_10.json new file mode 100644 index 00000000..1ff78984 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_11.json new file mode 100644 index 00000000..0362c09e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_12.json new file mode 100644 index 00000000..e101c33e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_13.json new file mode 100644 index 00000000..e577e7c6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_14.json new file mode 100644 index 00000000..a66d6cb9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_15.json new file mode 100644 index 00000000..d1f4e00d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_16.json new file mode 100644 index 00000000..d8e83887 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_2.json new file mode 100644 index 00000000..34c36a27 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_3.json new file mode 100644 index 00000000..b05afa15 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_4.json new file mode 100644 index 00000000..5768c3d0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_5.json new file mode 100644 index 00000000..0ed21001 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_6.json new file mode 100644 index 00000000..eb9224a5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_7.json new file mode 100644 index 00000000..c0f23996 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_8.json new file mode 100644 index 00000000..79a0c32d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_red_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_9.json new file mode 100644 index 00000000..157e1496 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_red_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_red" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_1.json new file mode 100644 index 00000000..243b279e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_10.json new file mode 100644 index 00000000..81c53ecd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_11.json new file mode 100644 index 00000000..e96fe447 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_12.json new file mode 100644 index 00000000..c8379d73 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_13.json new file mode 100644 index 00000000..176c07d1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_14.json new file mode 100644 index 00000000..7b981a8e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_15.json new file mode 100644 index 00000000..b2a229e7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_16.json new file mode 100644 index 00000000..937d1ffb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_2.json new file mode 100644 index 00000000..d7024c1e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_3.json new file mode 100644 index 00000000..9a0c1e63 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_4.json new file mode 100644 index 00000000..f8c96a08 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_5.json new file mode 100644 index 00000000..e73d36ee --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_6.json new file mode 100644 index 00000000..de5e536d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_7.json new file mode 100644 index 00000000..32055802 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_8.json new file mode 100644 index 00000000..632e3ad2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_9.json new file mode 100644 index 00000000..93c25454 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_standard_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_standard" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_1.json new file mode 100644 index 00000000..fbb92a7f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_10.json new file mode 100644 index 00000000..b47a942d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_11.json new file mode 100644 index 00000000..252c4aa0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_12.json new file mode 100644 index 00000000..10c47164 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_13.json new file mode 100644 index 00000000..b701a7d4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_14.json new file mode 100644 index 00000000..3db7015f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_15.json new file mode 100644 index 00000000..55a4df89 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_16.json new file mode 100644 index 00000000..30d84541 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_2.json new file mode 100644 index 00000000..797ac755 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_3.json new file mode 100644 index 00000000..e618f4f8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_4.json new file mode 100644 index 00000000..1dd57ad9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_5.json new file mode 100644 index 00000000..9ad3e613 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_6.json new file mode 100644 index 00000000..cd4307af --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_7.json new file mode 100644 index 00000000..232324c5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_8.json new file mode 100644 index 00000000..e28be09f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_white_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_9.json new file mode 100644 index 00000000..afee0761 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_white_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_white" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_1.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_1.json new file mode 100644 index 00000000..9c83f5bd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_10.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_10.json new file mode 100644 index 00000000..cef995cd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_11.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_11.json new file mode 100644 index 00000000..ec90fbc8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_12.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_12.json new file mode 100644 index 00000000..d9b15e69 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_13.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_13.json new file mode 100644 index 00000000..4de0dc21 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_14.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_14.json new file mode 100644 index 00000000..964bb11b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_15.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_15.json new file mode 100644 index 00000000..ef386493 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_16.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_16.json new file mode 100644 index 00000000..b056c731 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_2.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_2.json new file mode 100644 index 00000000..11e68570 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_3.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_3.json new file mode 100644 index 00000000..18c49cb4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_4.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_4.json new file mode 100644 index 00000000..8989ff22 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_5.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_5.json new file mode 100644 index 00000000..259a9c1f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_6.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_6.json new file mode 100644 index 00000000..b5b3205d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_7.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_7.json new file mode 100644 index 00000000..b37480ab --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_8.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_8.json new file mode 100644 index 00000000..5b744739 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_9.json b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_9.json new file mode 100644 index 00000000..65fa16b0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/road_block_yellow_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/road_block_yellow" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_1.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_1.json new file mode 100644 index 00000000..8e6f90a8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_10.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_10.json new file mode 100644 index 00000000..a0a31232 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_11.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_11.json new file mode 100644 index 00000000..a921f2d5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_12.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_12.json new file mode 100644 index 00000000..229ae541 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_13.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_13.json new file mode 100644 index 00000000..9ac38159 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_14.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_14.json new file mode 100644 index 00000000..9e83adfe --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_15.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_15.json new file mode 100644 index 00000000..39035b4c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_16.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_16.json new file mode 100644 index 00000000..a17b26ed --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_2.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_2.json new file mode 100644 index 00000000..3f20e55c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_3.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_3.json new file mode 100644 index 00000000..db30d82b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_4.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_4.json new file mode 100644 index 00000000..96e8de1c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_5.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_5.json new file mode 100644 index 00000000..0ae8c601 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_6.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_6.json new file mode 100644 index 00000000..f0e3883c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_7.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_7.json new file mode 100644 index 00000000..984195e5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_8.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_8.json new file mode 100644 index 00000000..504f909c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sand_road_9.json b/src/generated/resources/assets/furenikusroads/models/block/sand_road_9.json new file mode 100644 index 00000000..80462f1b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sand_road_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "minecraft:block/sand" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_1.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_1.json new file mode 100644 index 00000000..b5cf2bce --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_10.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_10.json new file mode 100644 index 00000000..36fd798b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_11.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_11.json new file mode 100644 index 00000000..08ed63aa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_12.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_12.json new file mode 100644 index 00000000..63f3f242 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_13.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_13.json new file mode 100644 index 00000000..f8eaf719 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_14.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_14.json new file mode 100644 index 00000000..ec05c1fe --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_15.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_15.json new file mode 100644 index 00000000..13134c43 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_16.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_16.json new file mode 100644 index 00000000..598f0124 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_2.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_2.json new file mode 100644 index 00000000..5cac85a2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_3.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_3.json new file mode 100644 index 00000000..fc480e6c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_4.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_4.json new file mode 100644 index 00000000..0d3e0f4c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_5.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_5.json new file mode 100644 index 00000000..4e8ca2b4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_6.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_6.json new file mode 100644 index 00000000..6b625274 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_7.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_7.json new file mode 100644 index 00000000..5c0943a9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_8.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_8.json new file mode 100644 index 00000000..b83cc34d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_9.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_9.json new file mode 100644 index 00000000..60ac4d61 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_1.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_1.json new file mode 100644 index 00000000..96f0e3c3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_10.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_10.json new file mode 100644 index 00000000..52acdf03 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_11.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_11.json new file mode 100644 index 00000000..ab2ad5fc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_12.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_12.json new file mode 100644 index 00000000..4b2f5d05 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_13.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_13.json new file mode 100644 index 00000000..318de8dc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_14.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_14.json new file mode 100644 index 00000000..6be2815f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_15.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_15.json new file mode 100644 index 00000000..3eead88f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_16.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_16.json new file mode 100644 index 00000000..e5120126 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_2.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_2.json new file mode 100644 index 00000000..1c1ac191 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_3.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_3.json new file mode 100644 index 00000000..490076b9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_4.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_4.json new file mode 100644 index 00000000..082cf559 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_5.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_5.json new file mode 100644 index 00000000..db688ea9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_6.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_6.json new file mode 100644 index 00000000..b5c85870 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_7.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_7.json new file mode 100644 index 00000000..0fd28b21 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_8.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_8.json new file mode 100644 index 00000000..6977c895 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_9.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_9.json new file mode 100644 index 00000000..275f178a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_clean_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_clean" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_1.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_1.json new file mode 100644 index 00000000..cc179ede --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_10.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_10.json new file mode 100644 index 00000000..3739fdbc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_11.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_11.json new file mode 100644 index 00000000..4d89df03 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_12.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_12.json new file mode 100644 index 00000000..0f3188d1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_13.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_13.json new file mode 100644 index 00000000..8f02808a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_14.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_14.json new file mode 100644 index 00000000..454a65eb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_15.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_15.json new file mode 100644 index 00000000..8275e8a2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_16.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_16.json new file mode 100644 index 00000000..46cffc70 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_2.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_2.json new file mode 100644 index 00000000..be04060a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_3.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_3.json new file mode 100644 index 00000000..32ef043f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_4.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_4.json new file mode 100644 index 00000000..663c03ad --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_5.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_5.json new file mode 100644 index 00000000..aa9d29aa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_6.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_6.json new file mode 100644 index 00000000..1df6864f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_7.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_7.json new file mode 100644 index 00000000..29378ba1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_8.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_8.json new file mode 100644 index 00000000..7599ddc9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_9.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_9.json new file mode 100644 index 00000000..194b056a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_dark_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_dark" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_1.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_1.json new file mode 100644 index 00000000..84ac878e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_10.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_10.json new file mode 100644 index 00000000..441552cd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_11.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_11.json new file mode 100644 index 00000000..d3236644 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_12.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_12.json new file mode 100644 index 00000000..9518d64e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_13.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_13.json new file mode 100644 index 00000000..7c917fb3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_14.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_14.json new file mode 100644 index 00000000..15760d1e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_15.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_15.json new file mode 100644 index 00000000..22d72f41 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_16.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_16.json new file mode 100644 index 00000000..7d9be9f8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_2.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_2.json new file mode 100644 index 00000000..a2411780 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_3.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_3.json new file mode 100644 index 00000000..f5e47555 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_4.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_4.json new file mode 100644 index 00000000..0cc293fe --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_5.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_5.json new file mode 100644 index 00000000..e2857735 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_6.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_6.json new file mode 100644 index 00000000..e360b903 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_7.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_7.json new file mode 100644 index 00000000..c9a7f895 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_8.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_8.json new file mode 100644 index 00000000..03610d56 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_9.json b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_9.json new file mode 100644 index 00000000..2ff74142 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/sidewalk_tan_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "furenikusroads:block/roads/sidewalk_tan" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_1.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_1.json new file mode 100644 index 00000000..51847cae --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_1.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_1", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_10.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_10.json new file mode 100644 index 00000000..9f935b68 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_10.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_10", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_11.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_11.json new file mode 100644 index 00000000..ef0475ab --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_11.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_11", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_12.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_12.json new file mode 100644 index 00000000..c04b46ea --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_12.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_12", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_13.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_13.json new file mode 100644 index 00000000..4bcefed5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_13.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_13", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_14.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_14.json new file mode 100644 index 00000000..6883c9f9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_14.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_14", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_15.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_15.json new file mode 100644 index 00000000..75b95830 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_15.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_15", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_16.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_16.json new file mode 100644 index 00000000..d874475b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_16.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_16", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_2.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_2.json new file mode 100644 index 00000000..0e97b715 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_2.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_2", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_3.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_3.json new file mode 100644 index 00000000..aedc246c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_3.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_3", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_4.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_4.json new file mode 100644 index 00000000..cd31202e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_4.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_4", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_5.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_5.json new file mode 100644 index 00000000..29c1e95e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_5.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_5", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_6.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_6.json new file mode 100644 index 00000000..8f486412 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_6.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_6", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_7.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_7.json new file mode 100644 index 00000000..3c1285e7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_7.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_7", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_8.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_8.json new file mode 100644 index 00000000..bfebc44e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_8.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_8", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/block/stone_road_9.json b/src/generated/resources/assets/furenikusroads/models/block/stone_road_9.json new file mode 100644 index 00000000..facbfc0f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/block/stone_road_9.json @@ -0,0 +1,6 @@ +{ + "parent": "furenikusroads:blocks/roads/road_block_9", + "textures": { + "texture": "minecraft:block/stone" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/cement.json b/src/generated/resources/assets/furenikusroads/models/item/cement.json new file mode 100644 index 00000000..1b537827 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/cement.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/cement" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/clinker.json b/src/generated/resources/assets/furenikusroads/models/item/clinker.json new file mode 100644 index 00000000..bc9131b9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/clinker.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/clinker" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/crushed_rock.json b/src/generated/resources/assets/furenikusroads/models/item/crushed_rock.json new file mode 100644 index 00000000..7858b9b8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/crushed_rock.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/crushed_rock" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_1.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_1.json new file mode 100644 index 00000000..d24d861e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_10.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_10.json new file mode 100644 index 00000000..530afaa9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_11.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_11.json new file mode 100644 index 00000000..c69d3233 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_12.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_12.json new file mode 100644 index 00000000..9f244792 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_13.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_13.json new file mode 100644 index 00000000..a9c6003e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_14.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_14.json new file mode 100644 index 00000000..078f1443 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_15.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_15.json new file mode 100644 index 00000000..9b807366 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_16.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_16.json new file mode 100644 index 00000000..5aa39ffe --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_2.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_2.json new file mode 100644 index 00000000..9f04d3af --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_3.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_3.json new file mode 100644 index 00000000..45a7714f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_4.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_4.json new file mode 100644 index 00000000..19e2c8fa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_5.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_5.json new file mode 100644 index 00000000..786980d9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_6.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_6.json new file mode 100644 index 00000000..5f50a0d6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_7.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_7.json new file mode 100644 index 00000000..8410faa3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_8.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_8.json new file mode 100644 index 00000000..02b6a939 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/dirt_road_9.json b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_9.json new file mode 100644 index 00000000..4d2f01df --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/dirt_road_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/dirt_road_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_1.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_1.json new file mode 100644 index 00000000..5f724a18 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_10.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_10.json new file mode 100644 index 00000000..2912d087 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_11.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_11.json new file mode 100644 index 00000000..72f397fd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_12.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_12.json new file mode 100644 index 00000000..271e5b4a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_13.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_13.json new file mode 100644 index 00000000..79fff5a8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_14.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_14.json new file mode 100644 index 00000000..0f95e8f6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_15.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_15.json new file mode 100644 index 00000000..11ac40c4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_16.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_16.json new file mode 100644 index 00000000..4aa8f427 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_2.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_2.json new file mode 100644 index 00000000..f4fc2bbf --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_3.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_3.json new file mode 100644 index 00000000..e37dda73 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_4.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_4.json new file mode 100644 index 00000000..13dafe66 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_5.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_5.json new file mode 100644 index 00000000..be0c30af --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_6.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_6.json new file mode 100644 index 00000000..a03241dc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_7.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_7.json new file mode 100644 index 00000000..f973e6fb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_8.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_8.json new file mode 100644 index 00000000..d84ee79f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/grass_road_9.json b/src/generated/resources/assets/furenikusroads/models/item/grass_road_9.json new file mode 100644 index 00000000..7f17f03e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/grass_road_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/grass_road_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_1.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_1.json new file mode 100644 index 00000000..068cf722 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_10.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_10.json new file mode 100644 index 00000000..5087b2b7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_11.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_11.json new file mode 100644 index 00000000..7bd65d87 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_12.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_12.json new file mode 100644 index 00000000..7d68b4d8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_13.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_13.json new file mode 100644 index 00000000..dfad750a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_14.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_14.json new file mode 100644 index 00000000..69af438a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_15.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_15.json new file mode 100644 index 00000000..56d3d412 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_16.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_16.json new file mode 100644 index 00000000..522173e1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_2.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_2.json new file mode 100644 index 00000000..6e138178 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_3.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_3.json new file mode 100644 index 00000000..db7b2e73 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_4.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_4.json new file mode 100644 index 00000000..bdcdf408 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_5.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_5.json new file mode 100644 index 00000000..6a3d5cd8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_6.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_6.json new file mode 100644 index 00000000..be97a75d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_7.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_7.json new file mode 100644 index 00000000..4663fba7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_8.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_8.json new file mode 100644 index 00000000..4825da46 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/gravel_road_9.json b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_9.json new file mode 100644 index 00000000..5b85cd3f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/gravel_road_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/gravel_road_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/limestone.json b/src/generated/resources/assets/furenikusroads/models/item/limestone.json new file mode 100644 index 00000000..ed8f3cf3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/limestone.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/limestone" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_1.json new file mode 100644 index 00000000..a504ee17 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_10.json new file mode 100644 index 00000000..0c89187b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_11.json new file mode 100644 index 00000000..63034696 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_12.json new file mode 100644 index 00000000..b88156ac --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_13.json new file mode 100644 index 00000000..a5b3d0b9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_14.json new file mode 100644 index 00000000..5409ca21 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_15.json new file mode 100644 index 00000000..fa6ee1f4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_16.json new file mode 100644 index 00000000..cc6c93d8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_2.json new file mode 100644 index 00000000..b89a8edd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_3.json new file mode 100644 index 00000000..49911358 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_4.json new file mode 100644 index 00000000..0da5f8e3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_5.json new file mode 100644 index 00000000..b9ecdfb6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_6.json new file mode 100644 index 00000000..81bb6db1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_7.json new file mode 100644 index 00000000..f37da7a9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_8.json new file mode 100644 index 00000000..103a020d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_9.json new file mode 100644 index 00000000..e7d9430d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_blue_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_blue_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_1.json new file mode 100644 index 00000000..02110ca0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_10.json new file mode 100644 index 00000000..3d768131 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_11.json new file mode 100644 index 00000000..6e1d2752 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_12.json new file mode 100644 index 00000000..3092ba39 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_13.json new file mode 100644 index 00000000..79796fec --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_14.json new file mode 100644 index 00000000..2f75d9dc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_15.json new file mode 100644 index 00000000..4dffe2e7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_16.json new file mode 100644 index 00000000..0d185b95 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_2.json new file mode 100644 index 00000000..aa53e36d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_3.json new file mode 100644 index 00000000..ff19f965 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_4.json new file mode 100644 index 00000000..1fe343f8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_5.json new file mode 100644 index 00000000..c34259d6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_6.json new file mode 100644 index 00000000..6481a8da --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_7.json new file mode 100644 index 00000000..c5ec6436 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_8.json new file mode 100644 index 00000000..de04f362 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_9.json new file mode 100644 index 00000000..366d32a1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_1_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_1_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_1.json new file mode 100644 index 00000000..b9720164 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_10.json new file mode 100644 index 00000000..a545b246 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_11.json new file mode 100644 index 00000000..94a5ccdb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_12.json new file mode 100644 index 00000000..2d381545 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_13.json new file mode 100644 index 00000000..d92e88f6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_14.json new file mode 100644 index 00000000..29ede06b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_15.json new file mode 100644 index 00000000..73eb5d38 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_16.json new file mode 100644 index 00000000..4dcd94d6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_2.json new file mode 100644 index 00000000..584fa508 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_3.json new file mode 100644 index 00000000..2bf0e003 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_4.json new file mode 100644 index 00000000..704ed7f9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_5.json new file mode 100644 index 00000000..7542f4c5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_6.json new file mode 100644 index 00000000..40f19a41 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_7.json new file mode 100644 index 00000000..ad7eafc6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_8.json new file mode 100644 index 00000000..57262754 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_9.json new file mode 100644 index 00000000..a53d7183 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_concrete_2_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_concrete_2_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_1.json new file mode 100644 index 00000000..8f39288e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_10.json new file mode 100644 index 00000000..a047a9fa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_11.json new file mode 100644 index 00000000..bf5c92c0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_12.json new file mode 100644 index 00000000..6ddda0ad --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_13.json new file mode 100644 index 00000000..edd2439e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_14.json new file mode 100644 index 00000000..0842cc73 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_15.json new file mode 100644 index 00000000..4b4304ae --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_16.json new file mode 100644 index 00000000..108451d9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_2.json new file mode 100644 index 00000000..3eabb62c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_3.json new file mode 100644 index 00000000..b589ceb2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_4.json new file mode 100644 index 00000000..86adeba0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_5.json new file mode 100644 index 00000000..5b79a1cd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_6.json new file mode 100644 index 00000000..4ba9532f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_7.json new file mode 100644 index 00000000..3256bf05 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_8.json new file mode 100644 index 00000000..36083bf6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_9.json new file mode 100644 index 00000000..7b2d351f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_dark_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_dark_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_1.json new file mode 100644 index 00000000..d343fd17 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_10.json new file mode 100644 index 00000000..8245e40f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_11.json new file mode 100644 index 00000000..f5e83cec --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_12.json new file mode 100644 index 00000000..5befabe6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_13.json new file mode 100644 index 00000000..51e46e3b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_14.json new file mode 100644 index 00000000..74561b6e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_15.json new file mode 100644 index 00000000..07e31315 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_16.json new file mode 100644 index 00000000..fa36049f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_2.json new file mode 100644 index 00000000..8544510d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_3.json new file mode 100644 index 00000000..c937403a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_4.json new file mode 100644 index 00000000..8bcd7533 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_5.json new file mode 100644 index 00000000..3b2480f8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_6.json new file mode 100644 index 00000000..3f40fa71 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_7.json new file mode 100644 index 00000000..90fb5b5b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_8.json new file mode 100644 index 00000000..724a3261 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_9.json new file mode 100644 index 00000000..9434aa5d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_fine_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_fine_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_1.json new file mode 100644 index 00000000..4c06acde --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_10.json new file mode 100644 index 00000000..6e3fb72d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_11.json new file mode 100644 index 00000000..1861c964 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_12.json new file mode 100644 index 00000000..7e1fe1ac --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_13.json new file mode 100644 index 00000000..85e33189 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_14.json new file mode 100644 index 00000000..0238fad5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_15.json new file mode 100644 index 00000000..4252039b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_16.json new file mode 100644 index 00000000..89d14d28 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_2.json new file mode 100644 index 00000000..17e1d5b6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_3.json new file mode 100644 index 00000000..761da6e2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_4.json new file mode 100644 index 00000000..bd536893 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_5.json new file mode 100644 index 00000000..9c9a517b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_6.json new file mode 100644 index 00000000..8bb19474 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_7.json new file mode 100644 index 00000000..b48d4572 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_8.json new file mode 100644 index 00000000..b0151f7b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_green_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_9.json new file mode 100644 index 00000000..06c2105a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_green_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_green_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_1.json new file mode 100644 index 00000000..9d910e2b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_10.json new file mode 100644 index 00000000..a16ca494 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_11.json new file mode 100644 index 00000000..bbf14e81 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_12.json new file mode 100644 index 00000000..7e8f7c96 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_13.json new file mode 100644 index 00000000..6772003e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_14.json new file mode 100644 index 00000000..86346b50 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_15.json new file mode 100644 index 00000000..974f6426 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_16.json new file mode 100644 index 00000000..a2faead3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_2.json new file mode 100644 index 00000000..53e445b3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_3.json new file mode 100644 index 00000000..197c1a7e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_4.json new file mode 100644 index 00000000..cbbcc71a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_5.json new file mode 100644 index 00000000..e7028d81 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_6.json new file mode 100644 index 00000000..d6b8d6b3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_7.json new file mode 100644 index 00000000..b529740c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_8.json new file mode 100644 index 00000000..d1cf342c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_light_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_9.json new file mode 100644 index 00000000..8b5ed222 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_light_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_light_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_1.json new file mode 100644 index 00000000..b0badd68 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_10.json new file mode 100644 index 00000000..4d4d0ccd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_11.json new file mode 100644 index 00000000..8fa8d27c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_12.json new file mode 100644 index 00000000..e5e49034 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_13.json new file mode 100644 index 00000000..d8d38b1d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_14.json new file mode 100644 index 00000000..9abb1879 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_15.json new file mode 100644 index 00000000..a4143970 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_16.json new file mode 100644 index 00000000..aed9fe75 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_2.json new file mode 100644 index 00000000..c97e45b4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_3.json new file mode 100644 index 00000000..cb9223d4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_4.json new file mode 100644 index 00000000..5899ff1b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_5.json new file mode 100644 index 00000000..1d11f1a7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_6.json new file mode 100644 index 00000000..5f3a0211 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_7.json new file mode 100644 index 00000000..2dce812d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_8.json new file mode 100644 index 00000000..6c9cc324 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_9.json new file mode 100644 index 00000000..410ecf44 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_1.json new file mode 100644 index 00000000..9d44cde9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_10.json new file mode 100644 index 00000000..f813d85c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_11.json new file mode 100644 index 00000000..853643cc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_12.json new file mode 100644 index 00000000..ba98903e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_13.json new file mode 100644 index 00000000..9b2a0168 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_14.json new file mode 100644 index 00000000..d282a12e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_15.json new file mode 100644 index 00000000..667bfd36 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_16.json new file mode 100644 index 00000000..fca0bd17 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_2.json new file mode 100644 index 00000000..22e8c104 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_3.json new file mode 100644 index 00000000..7470b4f8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_4.json new file mode 100644 index 00000000..472de6d6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_5.json new file mode 100644 index 00000000..fa57ba4e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_6.json new file mode 100644 index 00000000..f1c588a3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_7.json new file mode 100644 index 00000000..9f05c73a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_8.json new file mode 100644 index 00000000..65a68224 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_9.json new file mode 100644 index 00000000..0ee563fa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_muddy_dried_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_muddy_dried_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_1.json new file mode 100644 index 00000000..4efbc61c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_10.json new file mode 100644 index 00000000..c074235d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_11.json new file mode 100644 index 00000000..c5ebeae9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_12.json new file mode 100644 index 00000000..fd917c4a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_13.json new file mode 100644 index 00000000..8c642ada --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_14.json new file mode 100644 index 00000000..3588c704 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_15.json new file mode 100644 index 00000000..6ae3208d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_16.json new file mode 100644 index 00000000..3ab063e8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_2.json new file mode 100644 index 00000000..0d9239c2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_3.json new file mode 100644 index 00000000..b38da089 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_4.json new file mode 100644 index 00000000..6bc44185 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_5.json new file mode 100644 index 00000000..82a918b5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_6.json new file mode 100644 index 00000000..d2bdbfcf --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_7.json new file mode 100644 index 00000000..e90b98e3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_8.json new file mode 100644 index 00000000..363c70a9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_9.json new file mode 100644 index 00000000..db3cf66c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_pale_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_pale_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_1.json new file mode 100644 index 00000000..cfee0299 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_10.json new file mode 100644 index 00000000..d3aaedc7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_11.json new file mode 100644 index 00000000..4230a98d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_12.json new file mode 100644 index 00000000..c8b86819 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_13.json new file mode 100644 index 00000000..a8a45909 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_14.json new file mode 100644 index 00000000..955af3c6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_15.json new file mode 100644 index 00000000..fbaa1ef7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_16.json new file mode 100644 index 00000000..05a5292b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_2.json new file mode 100644 index 00000000..a910a7a3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_3.json new file mode 100644 index 00000000..b4449abd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_4.json new file mode 100644 index 00000000..2481fa3a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_5.json new file mode 100644 index 00000000..637a28c5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_6.json new file mode 100644 index 00000000..0e8b6788 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_7.json new file mode 100644 index 00000000..96c58f7a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_8.json new file mode 100644 index 00000000..ba6e580a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_red_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_9.json new file mode 100644 index 00000000..bb914fc9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_red_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_red_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_1.json new file mode 100644 index 00000000..6778da4f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_10.json new file mode 100644 index 00000000..e59ca997 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_11.json new file mode 100644 index 00000000..663cb988 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_12.json new file mode 100644 index 00000000..1d6b8de9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_13.json new file mode 100644 index 00000000..4a7f475e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_14.json new file mode 100644 index 00000000..75d3f1b9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_15.json new file mode 100644 index 00000000..1bc6af03 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_16.json new file mode 100644 index 00000000..9081135c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_2.json new file mode 100644 index 00000000..e0e14cad --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_3.json new file mode 100644 index 00000000..2dc2305b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_4.json new file mode 100644 index 00000000..27bd8bb3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_5.json new file mode 100644 index 00000000..ff16824a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_6.json new file mode 100644 index 00000000..ac6964a1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_7.json new file mode 100644 index 00000000..e0b0661e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_8.json new file mode 100644 index 00000000..92958cc2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_9.json new file mode 100644 index 00000000..123bd75a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_standard_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_standard_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_1.json new file mode 100644 index 00000000..9dfa3e09 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_10.json new file mode 100644 index 00000000..6fce70eb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_11.json new file mode 100644 index 00000000..76923a90 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_12.json new file mode 100644 index 00000000..0ca111f9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_13.json new file mode 100644 index 00000000..93eb784f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_14.json new file mode 100644 index 00000000..0ec31a76 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_15.json new file mode 100644 index 00000000..7fad5864 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_16.json new file mode 100644 index 00000000..64a379f2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_2.json new file mode 100644 index 00000000..70e5db55 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_3.json new file mode 100644 index 00000000..f0ebfcca --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_4.json new file mode 100644 index 00000000..2c97edf9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_5.json new file mode 100644 index 00000000..674796fc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_6.json new file mode 100644 index 00000000..3cf7294d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_7.json new file mode 100644 index 00000000..2250b645 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_8.json new file mode 100644 index 00000000..111938e1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_white_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_9.json new file mode 100644 index 00000000..6c123166 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_white_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_white_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_1.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_1.json new file mode 100644 index 00000000..9c0f6c8b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_10.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_10.json new file mode 100644 index 00000000..1992c49d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_11.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_11.json new file mode 100644 index 00000000..e61b622e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_12.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_12.json new file mode 100644 index 00000000..0d74c80b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_13.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_13.json new file mode 100644 index 00000000..ab78e0fb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_14.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_14.json new file mode 100644 index 00000000..a5cf99a7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_15.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_15.json new file mode 100644 index 00000000..a1783e7b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_16.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_16.json new file mode 100644 index 00000000..af5577de --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_2.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_2.json new file mode 100644 index 00000000..1925913d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_3.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_3.json new file mode 100644 index 00000000..8a5a7e14 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_4.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_4.json new file mode 100644 index 00000000..2f10bfeb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_5.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_5.json new file mode 100644 index 00000000..94de0d64 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_6.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_6.json new file mode 100644 index 00000000..8f62784f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_7.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_7.json new file mode 100644 index 00000000..b98a5676 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_8.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_8.json new file mode 100644 index 00000000..cdfaaf46 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_9.json b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_9.json new file mode 100644 index 00000000..36226046 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/road_block_yellow_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/road_block_yellow_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_1.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_1.json new file mode 100644 index 00000000..c054f2eb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_10.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_10.json new file mode 100644 index 00000000..86865ece --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_11.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_11.json new file mode 100644 index 00000000..3a1c1ada --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_12.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_12.json new file mode 100644 index 00000000..9c365df5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_13.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_13.json new file mode 100644 index 00000000..f7410077 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_14.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_14.json new file mode 100644 index 00000000..339c2dc2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_15.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_15.json new file mode 100644 index 00000000..04ce2ac2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_16.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_16.json new file mode 100644 index 00000000..1e10442c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_2.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_2.json new file mode 100644 index 00000000..869bc1c0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_3.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_3.json new file mode 100644 index 00000000..01cd0325 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_4.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_4.json new file mode 100644 index 00000000..dc3082ef --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_5.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_5.json new file mode 100644 index 00000000..b0a57b2b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_6.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_6.json new file mode 100644 index 00000000..a982cb40 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_7.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_7.json new file mode 100644 index 00000000..9cf94f75 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_8.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_8.json new file mode 100644 index 00000000..bb166c4b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sand_road_9.json b/src/generated/resources/assets/furenikusroads/models/item/sand_road_9.json new file mode 100644 index 00000000..0157767f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sand_road_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sand_road_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_1.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_1.json new file mode 100644 index 00000000..4507c623 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_10.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_10.json new file mode 100644 index 00000000..3b7316a9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_11.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_11.json new file mode 100644 index 00000000..57d14b47 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_12.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_12.json new file mode 100644 index 00000000..7f5a68df --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_13.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_13.json new file mode 100644 index 00000000..bd74f0b9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_14.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_14.json new file mode 100644 index 00000000..966b7273 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_15.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_15.json new file mode 100644 index 00000000..542ce811 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_16.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_16.json new file mode 100644 index 00000000..9e473662 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_2.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_2.json new file mode 100644 index 00000000..84f48d36 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_3.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_3.json new file mode 100644 index 00000000..cbcd74a6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_4.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_4.json new file mode 100644 index 00000000..9c8b26c7 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_5.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_5.json new file mode 100644 index 00000000..a72d12c8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_6.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_6.json new file mode 100644 index 00000000..222348f1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_7.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_7.json new file mode 100644 index 00000000..74bf0081 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_8.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_8.json new file mode 100644 index 00000000..77ec0ea0 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_9.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_9.json new file mode 100644 index 00000000..6ad18ee2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_1.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_1.json new file mode 100644 index 00000000..f4d0502d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_10.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_10.json new file mode 100644 index 00000000..32518c61 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_11.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_11.json new file mode 100644 index 00000000..0fa5ce6c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_12.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_12.json new file mode 100644 index 00000000..8f864058 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_13.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_13.json new file mode 100644 index 00000000..5a35797e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_14.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_14.json new file mode 100644 index 00000000..aac2ce16 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_15.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_15.json new file mode 100644 index 00000000..b868c119 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_16.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_16.json new file mode 100644 index 00000000..8ad34426 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_2.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_2.json new file mode 100644 index 00000000..3058cb63 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_3.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_3.json new file mode 100644 index 00000000..287991a8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_4.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_4.json new file mode 100644 index 00000000..32fe5863 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_5.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_5.json new file mode 100644 index 00000000..c1d76015 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_6.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_6.json new file mode 100644 index 00000000..90e21cb4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_7.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_7.json new file mode 100644 index 00000000..0ac250eb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_8.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_8.json new file mode 100644 index 00000000..5c95fa7e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_9.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_9.json new file mode 100644 index 00000000..2b3e420d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_clean_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_clean_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_1.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_1.json new file mode 100644 index 00000000..3a6721bd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_10.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_10.json new file mode 100644 index 00000000..30da9c49 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_11.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_11.json new file mode 100644 index 00000000..3f9c0fbd --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_12.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_12.json new file mode 100644 index 00000000..0ec82d1e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_13.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_13.json new file mode 100644 index 00000000..d28c683b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_14.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_14.json new file mode 100644 index 00000000..f08ceb6b --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_15.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_15.json new file mode 100644 index 00000000..6c7222ed --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_16.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_16.json new file mode 100644 index 00000000..1ac0dd7e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_2.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_2.json new file mode 100644 index 00000000..eb507c85 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_3.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_3.json new file mode 100644 index 00000000..fbdaf6e5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_4.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_4.json new file mode 100644 index 00000000..493212e6 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_5.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_5.json new file mode 100644 index 00000000..b58f2267 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_6.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_6.json new file mode 100644 index 00000000..0840f03c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_7.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_7.json new file mode 100644 index 00000000..21bb95aa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_8.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_8.json new file mode 100644 index 00000000..5fd814fb --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_9.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_9.json new file mode 100644 index 00000000..e634fd3c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_dark_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_dark_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_1.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_1.json new file mode 100644 index 00000000..4f89669c --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_10.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_10.json new file mode 100644 index 00000000..8e75e697 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_11.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_11.json new file mode 100644 index 00000000..88b8b4f5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_12.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_12.json new file mode 100644 index 00000000..7245df05 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_13.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_13.json new file mode 100644 index 00000000..29552af9 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_14.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_14.json new file mode 100644 index 00000000..0ba47ad4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_15.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_15.json new file mode 100644 index 00000000..c03cd539 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_16.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_16.json new file mode 100644 index 00000000..286531a2 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_2.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_2.json new file mode 100644 index 00000000..285266e1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_3.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_3.json new file mode 100644 index 00000000..da61bdab --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_4.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_4.json new file mode 100644 index 00000000..fa55dc9e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_5.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_5.json new file mode 100644 index 00000000..5ee03e40 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_6.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_6.json new file mode 100644 index 00000000..8365e2ec --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_7.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_7.json new file mode 100644 index 00000000..9ecc71e3 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_8.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_8.json new file mode 100644 index 00000000..37537046 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_9.json b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_9.json new file mode 100644 index 00000000..b8538434 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/sidewalk_tan_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/sidewalk_tan_9" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_1.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_1.json new file mode 100644 index 00000000..1b8f4235 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_1.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_1" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_10.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_10.json new file mode 100644 index 00000000..5d711a05 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_10.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_10" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_11.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_11.json new file mode 100644 index 00000000..16e7812e --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_11.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_11" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_12.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_12.json new file mode 100644 index 00000000..5ef4200f --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_12.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_12" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_13.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_13.json new file mode 100644 index 00000000..012e01fa --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_13.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_13" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_14.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_14.json new file mode 100644 index 00000000..69556666 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_14.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_14" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_15.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_15.json new file mode 100644 index 00000000..d45c493a --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_15.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_15" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_16.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_16.json new file mode 100644 index 00000000..669dd0f8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_16.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_16" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_2.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_2.json new file mode 100644 index 00000000..465c01ea --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_2.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_2" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_3.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_3.json new file mode 100644 index 00000000..e14cebc8 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_3.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_3" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_4.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_4.json new file mode 100644 index 00000000..65ac9ff5 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_4.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_4" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_5.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_5.json new file mode 100644 index 00000000..8bc4f87d --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_5.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_5" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_6.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_6.json new file mode 100644 index 00000000..1ac905b1 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_6.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_6" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_7.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_7.json new file mode 100644 index 00000000..2b9141dc --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_7.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_7" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_8.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_8.json new file mode 100644 index 00000000..deefd6b4 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_8.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_8" +} \ No newline at end of file diff --git a/src/generated/resources/assets/furenikusroads/models/item/stone_road_9.json b/src/generated/resources/assets/furenikusroads/models/item/stone_road_9.json new file mode 100644 index 00000000..478b8678 --- /dev/null +++ b/src/generated/resources/assets/furenikusroads/models/item/stone_road_9.json @@ -0,0 +1,3 @@ +{ + "parent": "furenikusroads:block/stone_road_9" +} \ No newline at end of file diff --git a/src/main/java/com/fureniku/roads/FurenikusRoads.java b/src/main/java/com/fureniku/roads/FurenikusRoads.java new file mode 100644 index 00000000..8f248ca4 --- /dev/null +++ b/src/main/java/com/fureniku/roads/FurenikusRoads.java @@ -0,0 +1,38 @@ +package com.fureniku.roads; + +import com.fureniku.metropolis.utils.Debug; +import com.fureniku.roads.datagen.DataGeneration; +import com.mojang.logging.LogUtils; +import net.neoforged.bus.api.IEventBus; +import net.neoforged.fml.common.Mod; +import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent; +import net.neoforged.fml.javafmlmod.FMLJavaModLoadingContext; +import org.slf4j.Logger; + +@Mod(FurenikusRoads.MODID) +public class FurenikusRoads { + + public static final String MODID = "furenikusroads"; + public static final Logger LOGGER = LogUtils.getLogger(); + + public static FurenikusRoads INSTANCE; + public RegistrationRoads registration; + + public FurenikusRoads() { + INSTANCE = this; + Debug.registerMod("Fureniku's Roads"); + + IEventBus modEventBus = FMLJavaModLoadingContext.get().getModEventBus(); + registration = new RegistrationRoads(MODID, modEventBus); + registration.init(modEventBus); + + // Register the commonSetup method for modloading + modEventBus.addListener(this::commonSetup); + modEventBus.addListener(DataGeneration::generate); + } + + private void commonSetup(final FMLCommonSetupEvent event) { + registration.generateCreativeTabs(); + } +} + diff --git a/src/main/java/com/fureniku/roads/RegistrationRoads.java b/src/main/java/com/fureniku/roads/RegistrationRoads.java new file mode 100644 index 00000000..f3d00449 --- /dev/null +++ b/src/main/java/com/fureniku/roads/RegistrationRoads.java @@ -0,0 +1,120 @@ +package com.fureniku.roads; + +import com.fureniku.metropolis.RegistrationBase; +import com.fureniku.metropolis.utils.CreativeTabSet; +import com.fureniku.roads.blocks.DecorativeBlock; +import com.fureniku.roads.blocks.RoadBlockSet; +import net.minecraft.client.renderer.BiomeColors; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.GrassColor; +import net.minecraft.world.level.block.Block; +import net.neoforged.bus.api.IEventBus; +import net.neoforged.bus.api.SubscribeEvent; +import net.neoforged.neoforge.client.event.RegisterColorHandlersEvent; +import net.neoforged.neoforge.registries.RegistryObject; + +import java.util.ArrayList; +import java.util.stream.Stream; + +public class RegistrationRoads extends RegistrationBase { + + //region Blocknames + private final String CRUSHED_ROCK = "crushed_rock"; + private final String CLINKER = "clinker"; + private final String CEMENT = "cement"; + private final String LIMESTONE = "limestone"; + //endregion + + private CreativeTabSet _roadTab; + private CreativeTabSet _generalTab; + + private RoadBlockSet _grassBlockSet; //Edge case - needs colouring. + + private ArrayList _roadBlockSets = new ArrayList<>(); + + public RegistrationRoads(String modid, IEventBus modEventBus) { + super(modid, modEventBus); + } + + @Override + public void init(IEventBus modEventBus) { + _grassBlockSet = new RoadBlockSet("grass_road", new ResourceLocation("minecraft", "block/grass_block_top")); + + _roadBlockSets.add(new RoadBlockSet("road_block_standard")); + _roadBlockSets.add(new RoadBlockSet("road_block_concrete_1")); + _roadBlockSets.add(new RoadBlockSet("road_block_concrete_2")); + _roadBlockSets.add(new RoadBlockSet("road_block_fine")); + _roadBlockSets.add(new RoadBlockSet("road_block_dark")); + _roadBlockSets.add(new RoadBlockSet("road_block_pale")); + _roadBlockSets.add(new RoadBlockSet("road_block_light")); + _roadBlockSets.add(new RoadBlockSet("road_block_muddy")); + _roadBlockSets.add(new RoadBlockSet("road_block_muddy_dried")); + _roadBlockSets.add(new RoadBlockSet("road_block_white")); + _roadBlockSets.add(new RoadBlockSet("road_block_yellow")); + _roadBlockSets.add(new RoadBlockSet("road_block_red")); + _roadBlockSets.add(new RoadBlockSet("road_block_blue")); + _roadBlockSets.add(new RoadBlockSet("road_block_green")); + + _roadBlockSets.add(_grassBlockSet); + _roadBlockSets.add(new RoadBlockSet("stone_road", new ResourceLocation("minecraft", "block/stone"))); + _roadBlockSets.add(new RoadBlockSet("dirt_road", new ResourceLocation("minecraft", "block/dirt"))); + _roadBlockSets.add(new RoadBlockSet("gravel_road", new ResourceLocation("minecraft", "block/gravel"))); + _roadBlockSets.add(new RoadBlockSet("sand_road", new ResourceLocation("minecraft", "block/sand"))); + + _roadBlockSets.add(new RoadBlockSet("sidewalk")); + _roadBlockSets.add(new RoadBlockSet("sidewalk_clean")); + _roadBlockSets.add(new RoadBlockSet("sidewalk_dark")); + _roadBlockSets.add(new RoadBlockSet("sidewalk_tan")); + + registerBlockSet(CRUSHED_ROCK, DecorativeBlock::new); + registerBlockSet(CLINKER, DecorativeBlock::new); + registerBlockSet(CEMENT, DecorativeBlock::new); + registerBlockSet(LIMESTONE, DecorativeBlock::new); + + _roadTab = new CreativeTabSet(creativeTabs,"road_tab", _roadBlockSets.get(0).getRegistryItem(16)); + _generalTab = new CreativeTabSet(creativeTabs,"general_tab", getItem(CRUSHED_ROCK)); + + modEventBus.addListener(this::registerBlockColors); + modEventBus.addListener(this::registerItemColors); + } + + @Override + public void generateCreativeTabs() { + buildRoadTab(); + buildGeneralTab(); + } + + private void buildRoadTab() { + for (int i = 0; i < _roadBlockSets.size(); i++) { + _roadBlockSets.get(i).registerToCreativeTab(_roadTab); + } + } + + private void buildGeneralTab() { + _generalTab.addItem(getItem(CRUSHED_ROCK).get().getDefaultInstance()); + _generalTab.addItem(getItem(CLINKER).get().getDefaultInstance()); + _generalTab.addItem(getItem(CEMENT).get().getDefaultInstance()); + _generalTab.addItem(getItem(LIMESTONE).get().getDefaultInstance()); + } + + @Override + protected ArrayList getCreativeTabs() { + ArrayList tabList = new ArrayList(); + tabList.add(_roadTab); + tabList.add(_generalTab); + return tabList; + } + + @SubscribeEvent + public void registerBlockColors(RegisterColorHandlersEvent.Block event) { + event.register((state, tint, pos, tintIndex) -> tint != null && pos != null ? BiomeColors.getAverageGrassColor(tint, pos) : GrassColor.getDefaultColor(), + Stream.of(_grassBlockSet.getRegistryBlocks()).map(RegistryObject::get).toArray(Block[]::new)); + } + + @SubscribeEvent + public void registerItemColors(RegisterColorHandlersEvent.Item event) { + event.register((stack, tintIndex) -> GrassColor.getDefaultColor(), + Stream.of(_grassBlockSet.getRegistryItems()).map(RegistryObject::get).toArray(Item[]::new)); + } +} \ No newline at end of file diff --git a/src/main/java/com/fureniku/roads/blocks/DecorativeBlock.java b/src/main/java/com/fureniku/roads/blocks/DecorativeBlock.java new file mode 100644 index 00000000..ab9a930f --- /dev/null +++ b/src/main/java/com/fureniku/roads/blocks/DecorativeBlock.java @@ -0,0 +1,13 @@ +package com.fureniku.roads.blocks; + +import com.fureniku.metropolis.blocks.MetroBlockBase; +import net.minecraft.world.level.block.SoundType; + +public class DecorativeBlock extends MetroBlockBase { + + public DecorativeBlock() { + super(Properties.of() + .strength(1.0f) + .sound(SoundType.STONE)); + } +} diff --git a/src/main/java/com/fureniku/roads/blocks/RoadBlock.java b/src/main/java/com/fureniku/roads/blocks/RoadBlock.java new file mode 100644 index 00000000..f7cb9f75 --- /dev/null +++ b/src/main/java/com/fureniku/roads/blocks/RoadBlock.java @@ -0,0 +1,63 @@ +package com.fureniku.roads.blocks; + +import com.fureniku.metropolis.blocks.MetroBlockBase; +import com.fureniku.metropolis.datagen.MetroBlockStateProvider; +import com.fureniku.metropolis.utils.Debug; +import com.fureniku.roads.FurenikusRoads; +import net.minecraft.core.BlockPos; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.shapes.VoxelShape; +import net.neoforged.neoforge.client.model.generators.ModelFile; +import net.neoforged.neoforge.registries.RegistryObject; + +public class RoadBlock extends MetroBlockBase { + + private final int HEIGHT; + private final VoxelShape BLOCK_SHAPE; + private RoadBlockSet _roadBlockSet; + private ResourceLocation _resourceLocation; + + public RoadBlock(int height, RoadBlockSet blockSet) { + this(height, blockSet, new ResourceLocation(FurenikusRoads.MODID, "block/roads/" + blockSet.getSetName())); + } + + /** + * Constructor to take in a specific texture file + * @param height the height of the roadblock; 1-16 + * @param blockSet the blockset this block belongs to + * @param texture the texture the roadblock should use + */ + public RoadBlock(int height, RoadBlockSet blockSet, ResourceLocation texture) { + super(Properties.of() + .strength(1.0f) + .sound(SoundType.STONE)); + HEIGHT = height; + BLOCK_SHAPE = Block.box(0, 0, 0, 16, height, 16); + _roadBlockSet = blockSet; + _resourceLocation = texture; + } + + @Override + protected void onRightClickRemote(BlockState state, BlockPos pos, Player player) { + ItemStack heldItem = player.getItemInHand(InteractionHand.MAIN_HAND); + //TODO various interactions from items + } + + @Override + protected VoxelShape getShapeFromBlockState(BlockState pState) { + return BLOCK_SHAPE; + } + + @Override + public void generateBlockState(RegistryObject blockRegistryObject, MetroBlockStateProvider blockStateProvider) { + Block block = blockRegistryObject.get(); + ModelFile modelFile = blockStateProvider.getModelFilesWithTexture(block, "", "blocks/roads/road_block_" + HEIGHT, _resourceLocation); + blockStateProvider.simpleBlockWithItem(block, modelFile); + } +} \ No newline at end of file diff --git a/src/main/java/com/fureniku/roads/blocks/RoadBlockSet.java b/src/main/java/com/fureniku/roads/blocks/RoadBlockSet.java new file mode 100644 index 00000000..9c8d8d46 --- /dev/null +++ b/src/main/java/com/fureniku/roads/blocks/RoadBlockSet.java @@ -0,0 +1,36 @@ +package com.fureniku.roads.blocks; + +import com.fureniku.metropolis.blocks.BlockSet; +import com.fureniku.roads.FurenikusRoads; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.level.block.Block; + +import java.util.function.Supplier; + +public class RoadBlockSet extends BlockSet { + + public RoadBlockSet(String name, ResourceLocation texture) { + super(name, texture, 16, FurenikusRoads.INSTANCE.registration); + } + + public RoadBlockSet(String name) { + this(name, null); + } + + public RoadBlock getHigherBlock(int currentHeight) { + return currentHeight < _blockCount ? getAtHeight(currentHeight+1) : getAtHeight(0); + } + + public RoadBlock getLowerBlock(int currentHeight) { + return currentHeight > 0 ? getAtHeight(currentHeight-1) : getAtHeight(_blockCount-1); + } + + private RoadBlock getAtHeight(int height) { + return (RoadBlock) getFromId(height); + } + + @Override + protected Supplier getClassSupplier(int id) { + return _resourceLocation == null ? () -> new RoadBlock(id, this) : () -> new RoadBlock(id, this, _resourceLocation); + } +} diff --git a/src/main/java/com/fureniku/roads/datagen/DataGeneration.java b/src/main/java/com/fureniku/roads/datagen/DataGeneration.java new file mode 100644 index 00000000..9780a5eb --- /dev/null +++ b/src/main/java/com/fureniku/roads/datagen/DataGeneration.java @@ -0,0 +1,18 @@ +package com.fureniku.roads.datagen; + +import com.fureniku.metropolis.utils.Debug; +import net.minecraft.data.DataGenerator; +import net.minecraft.data.PackOutput; +import net.neoforged.neoforge.common.data.ExistingFileHelper; +import net.neoforged.neoforge.data.event.GatherDataEvent; + +public class DataGeneration { + + public static void generate(GatherDataEvent event) { + Debug.Log("Generating"); + DataGenerator generator = event.getGenerator(); + PackOutput packOutput = generator.getPackOutput(); + ExistingFileHelper efh = event.getExistingFileHelper(); + generator.addProvider(event.includeClient(), new RoadsBlockStates(packOutput, efh)); + } +} diff --git a/src/main/java/com/fureniku/roads/datagen/RoadsBlockStates.java b/src/main/java/com/fureniku/roads/datagen/RoadsBlockStates.java new file mode 100644 index 00000000..cd11e054 --- /dev/null +++ b/src/main/java/com/fureniku/roads/datagen/RoadsBlockStates.java @@ -0,0 +1,22 @@ +package com.fureniku.roads.datagen; + +import com.fureniku.metropolis.datagen.MetroBlockStateProvider; +import com.fureniku.roads.FurenikusRoads; +import net.minecraft.data.PackOutput; +import net.minecraft.world.level.block.Block; +import net.neoforged.neoforge.common.data.ExistingFileHelper; +import net.neoforged.neoforge.registries.RegistryObject; + +import java.util.Collection; + +public class RoadsBlockStates extends MetroBlockStateProvider { + + public RoadsBlockStates(PackOutput output, ExistingFileHelper fileHelper) { + super(output, FurenikusRoads.MODID, fileHelper); + } + + @Override + protected Collection> getBlocks() { + return FurenikusRoads.INSTANCE.registration.getBlockArray().values(); + } +} \ No newline at end of file diff --git a/src/main/java/com/fureniku/roads/datagen/RoadsItemModelProvider.java b/src/main/java/com/fureniku/roads/datagen/RoadsItemModelProvider.java new file mode 100644 index 00000000..ae1110f5 --- /dev/null +++ b/src/main/java/com/fureniku/roads/datagen/RoadsItemModelProvider.java @@ -0,0 +1,18 @@ +package com.fureniku.roads.datagen; + +import com.fureniku.metropolis.datagen.MetroItemModelProvider; +import com.fureniku.roads.FurenikusRoads; +import net.minecraft.data.PackOutput; +import net.neoforged.neoforge.common.data.ExistingFileHelper; + +public class RoadsItemModelProvider extends MetroItemModelProvider { + + public RoadsItemModelProvider(PackOutput output, ExistingFileHelper existingFileHelper) { + super(output, FurenikusRoads.MODID, existingFileHelper); + } + + @Override + protected void registerModels() { + //simpleItem() + } +} diff --git a/src/main/java/com/fureniku/roads/enums/EnumRoadSize.java b/src/main/java/com/fureniku/roads/enums/EnumRoadSize.java new file mode 100644 index 00000000..bf99046a --- /dev/null +++ b/src/main/java/com/fureniku/roads/enums/EnumRoadSize.java @@ -0,0 +1,51 @@ +package com.fureniku.roads.enums; + +import net.minecraft.util.StringRepresentable; + +public enum EnumRoadSize implements StringRepresentable { + height_01(1, "1_16"), + height_02(2, "2_16"), + height_03(3, "3_16"), + height_04(4, "4_16"), + height_05(5, "5_16"), + height_06(6, "6_16"), + height_07(7, "7_16"), + height_08(8, "8_16"), + height_09(9, "9_16"), + height_10(10, "10_16"), + height_11(11, "11_16"), + height_12(12, "12_16"), + height_13(13, "13_16"), + height_14(14, "14_16"), + height_15(15, "15_16"), + height_16(16, "16_16"); + + private static final EnumRoadSize[] LOOKUP = new EnumRoadSize[values().length]; + private final int height; + private final String name; + + EnumRoadSize(int height, String name) { + this.height = height; + this.name = name; + } + + @Override + public String getSerializedName() { + return this.name; + } + + @Override + public String toString() { + return getSerializedName(); + } + + public int getHeight() { + return this.height-1; + } + + static { + for (EnumRoadSize type: values()) { + LOOKUP[type.getHeight()] = type; + } + } +} diff --git a/src/main/java/com/silvaniastudios/roads/CommonProxy.java b/src/main/java/com/silvaniastudios/roads/CommonProxy.java deleted file mode 100644 index 715d516f..00000000 --- a/src/main/java/com/silvaniastudios/roads/CommonProxy.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.silvaniastudios.roads; - -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.items.FRItems; - -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.common.Mod.Instance; -import net.minecraftforge.fml.common.registry.GameRegistry; -import net.minecraftforge.oredict.OreDictionary; - -@Mod.EventBusSubscriber -public class CommonProxy { - - @Instance - public static FurenikusRoads instance; - - public void registerItemRenderer(Item item, int meta, String id) {} - - public void openGui(int guiId) {} - - public void preInit() {} - public void postInit() {} - - public void init() { - oreDictRegistry(); - registerFurnaceRecipes(); - } - - public static void oreDictRegistry() { - OreDictionary.registerOre("tarmac", new ItemStack(FRBlocks.road_block_standard, 1, 15)); - OreDictionary.registerOre("tarmac", new ItemStack(FRBlocks.road_block_light, 1, 15)); - OreDictionary.registerOre("tarmac", new ItemStack(FRBlocks.road_block_fine, 1, 15)); - OreDictionary.registerOre("tarmac", new ItemStack(FRBlocks.road_block_dark, 1, 15)); - OreDictionary.registerOre("tarmac", new ItemStack(FRBlocks.road_block_red, 1, 15)); - OreDictionary.registerOre("tarmac", new ItemStack(FRBlocks.road_block_blue, 1, 15)); - OreDictionary.registerOre("tarmac", new ItemStack(FRBlocks.road_block_white, 1, 15)); - OreDictionary.registerOre("tarmac", new ItemStack(FRBlocks.road_block_yellow, 1, 15)); - OreDictionary.registerOre("tarmac", new ItemStack(FRBlocks.road_block_green, 1, 15)); - - OreDictionary.registerOre("limestone", new ItemStack(FRBlocks.generic_blocks, 1, 3)); - - OreDictionary.registerOre("nuggetDiamond", new ItemStack(FRItems.diamond_nugget)); - } - - public static void registerFurnaceRecipes() { - GameRegistry.addSmelting(FRItems.clinker_mix, new ItemStack(FRBlocks.generic_blocks, 1, 1), 0.0F); - GameRegistry.addSmelting(FRItems.cement_dust, new ItemStack(FRBlocks.generic_blocks, 1, 2), 0.0F); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/FRSounds.java b/src/main/java/com/silvaniastudios/roads/FRSounds.java deleted file mode 100644 index b3654c13..00000000 --- a/src/main/java/com/silvaniastudios/roads/FRSounds.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.silvaniastudios.roads; - -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.SoundEvent; -import net.minecraftforge.registries.IForgeRegistry; - -public class FRSounds { - - public static SoundEvent pneumatic_drill = new SoundEvent(new ResourceLocation(FurenikusRoads.MODID, "pneumatic_drill")); - - public static void register(IForgeRegistry event) { - event.register(pneumatic_drill); - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/FurenikusRoads.java b/src/main/java/com/silvaniastudios/roads/FurenikusRoads.java deleted file mode 100644 index cf806038..00000000 --- a/src/main/java/com/silvaniastudios/roads/FurenikusRoads.java +++ /dev/null @@ -1,242 +0,0 @@ -package com.silvaniastudios.roads; - -import com.silvaniastudios.roads.registries.CustomPaintModelRegistry; -import com.silvaniastudios.roads.client.TextureRegistryHandler; -import net.minecraft.util.text.TextFormatting; -import net.minecraftforge.fml.common.Loader; -import org.apache.logging.log4j.Logger; - -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.tileentities.recipes.RecipeRegistry; -import com.silvaniastudios.roads.fluids.FRFluids; -import com.silvaniastudios.roads.items.FRItems; -import com.silvaniastudios.roads.items.RoadsFuelHandler; -import com.silvaniastudios.roads.network.ClientGuiUpdatePacket; -import com.silvaniastudios.roads.network.CompactorUpdatePacket; -import com.silvaniastudios.roads.network.FabricatorUpdatePacket; -import com.silvaniastudios.roads.network.PaintGunUpdatePacket; -import com.silvaniastudios.roads.registries.DynamicBlockRegistry; -import com.silvaniastudios.roads.registries.PaintGunItemRegistry; - -import net.minecraft.block.Block; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.SoundEvent; -import net.minecraftforge.client.event.ModelRegistryEvent; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.event.RegistryEvent; -import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fml.common.Mod; -import net.minecraftforge.fml.common.Mod.EventHandler; -import net.minecraftforge.fml.common.Mod.Instance; -import net.minecraftforge.fml.common.SidedProxy; -import net.minecraftforge.fml.common.event.FMLInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; -import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; -import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; -import net.minecraftforge.fml.common.network.NetworkRegistry; -import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper; -import net.minecraftforge.fml.common.registry.GameRegistry; -import net.minecraftforge.fml.relauncher.Side; -import scala.Array; -import scala.Dynamic; - -import java.awt.*; -import java.io.File; -import java.io.IOException; -import java.net.JarURLConnection; -import java.net.MalformedURLException; -import java.net.URL; -import java.util.ArrayList; -import java.util.Enumeration; -import java.util.jar.JarEntry; -import java.util.jar.JarFile; -import java.util.zip.ZipEntry; -import java.util.zip.ZipInputStream; - -@Mod(modid=FurenikusRoads.MODID, name="Fureniku's Roads", version=FurenikusRoads.VERSION) -public class FurenikusRoads { - - public static final String MODID = "furenikusroads"; - public static final String VERSION = "1.2.6"; - - @Instance(MODID) - public static FurenikusRoads instance; - public static Logger logger; - - @SidedProxy(clientSide="com.silvaniastudios.roads.client.ClientProxy", serverSide="com.silvaniastudios.roads.CommonProxy") - public static CommonProxy proxy; - - public static final SimpleNetworkWrapper PACKET_CHANNEL = NetworkRegistry.INSTANCE.newSimpleChannel(MODID); - - public static final boolean genInternalTextures = false; //Set to true to generate a texture set from internal json paint files. - public static final boolean genJsonFromTextures = false; //Set to true to generate a json file from a texture. Create a folder called "conversions" in root dir, put PNGs in there and magic happens. - - public static CreativeTabs tab_roads = new CreativeTabs("tab_roads") { - @Override - public ItemStack getTabIconItem() { - return new ItemStack(FRBlocks.road_block_standard, 1, 11); - } - }; - - public static CreativeTabs tab_sidewalks = new CreativeTabs("tab_sidewalks") { - @Override - public ItemStack getTabIconItem() { - return new ItemStack(FRBlocks.street_block_a, 1, 3); - } - }; - - public static CreativeTabs tab_road_parts = new CreativeTabs("tab_road_parts") { - @Override - public ItemStack getTabIconItem() { - return new ItemStack(FRBlocks.tactile_crossing_bumps, 1, 0); - } - }; - - public static CreativeTabs tab_tools = new CreativeTabs("tab_tools") { - @Override - public ItemStack getTabIconItem() { - return new ItemStack(FRItems.paint_gun, 1, 0); - } - }; - - public static CreativeTabs tab_diagonals = new CreativeTabs("tab_diagonals") { - @Override - public ItemStack getTabIconItem() { - return new ItemStack(FRBlocks.road_block_diagonal_1_2, 1, 0); - } - }; - - public static CreativeTabs tab_paint_lines = new CreativeTabs("tab_paint_lines") { - @Override - public ItemStack getTabIconItem() { - return new ItemStack(Block.REGISTRY.getObject(new ResourceLocation(MODID, "line_white_straight_thick")), 1, 0); - } - }; - - public static CreativeTabs tab_paint_icons = new CreativeTabs("tab_paint_icons") { - @Override - public ItemStack getTabIconItem() { - return new ItemStack(Block.REGISTRY.getObject(new ResourceLocation(MODID, "white_wheelchair_icon")), 1, 0); - } - }; - - public static CreativeTabs tab_paint_letters = new CreativeTabs("tab_paint_letters") { - @Override - public ItemStack getTabIconItem() { - return new ItemStack(Block.REGISTRY.getObject(new ResourceLocation(MODID, "paint_letter_white_ab")), 1, 0); - } - }; - - public static CreativeTabs tab_paint_text = new CreativeTabs("tab_paint_text") { - @Override - public ItemStack getTabIconItem() { - return new ItemStack(Block.REGISTRY.getObject(new ResourceLocation(MODID, "white_slow")), 1, 0); - } - }; - - public static CreativeTabs tab_paint_junction = new CreativeTabs("tab_paint_junction") { - @Override - public ItemStack getTabIconItem() { - return new ItemStack(Block.REGISTRY.getObject(new ResourceLocation(MODID, "white_junction_fork_chevron_mid")), 1, 0); - } - }; - - public static CreativeTabs tab_paint_customs = new CreativeTabs("tab_paint_customs") { - @Override - public ItemStack getTabIconItem() { - return new ItemStack(Block.REGISTRY.getObject(new ResourceLocation(MODID, "white_junction_fork_chevron_mid")), 1, 0); - } - }; - - static { - FluidRegistry.enableUniversalBucket(); - } - - public static ArrayList plugins = new ArrayList<>(); - - @EventHandler - public void preInit(FMLPreInitializationEvent event) { - for (int i = 0; i < plugins.size(); i++) { - if (Loader.isModLoaded(plugins.get(i))) { - Object modMainClass = Loader.instance().getIndexedModList().get(plugins.get(i)).getMod(); - if (modMainClass instanceof IColour) { - IColour col = (IColour) modMainClass; - FRBlocks.addNewColour(col.getColourName(), col.getColour().getRGB(), col.getTextFormat()); - } - } - } - - if (genJsonFromTextures) { - TextureRegistryHandler.generateJSONFromTextures(); - } - - CustomPaintModelRegistry.register(event); - DynamicBlockRegistry.register(); - proxy.preInit(); - logger = event.getModLog(); - if (RoadsConfig.general.genLimestone) { - GameRegistry.registerWorldGenerator(new WorldGen(), 3); - } - } - - @EventHandler - @SuppressWarnings("deprecation") - public void init(FMLInitializationEvent event) { - proxy.init(); - NetworkRegistry.INSTANCE.registerGuiHandler(FurenikusRoads.instance, new GuiHandler()); - PACKET_CHANNEL.registerMessage(PaintGunUpdatePacket.Handler.class, PaintGunUpdatePacket.class, 0, Side.SERVER); - PACKET_CHANNEL.registerMessage(CompactorUpdatePacket.Handler.class, CompactorUpdatePacket.class, 1, Side.SERVER); - PACKET_CHANNEL.registerMessage(FabricatorUpdatePacket.Handler.class, FabricatorUpdatePacket.class, 2, Side.SERVER); - PACKET_CHANNEL.registerMessage(ClientGuiUpdatePacket.Handler.class, ClientGuiUpdatePacket.class, 4, Side.CLIENT); - FRFluids.registerFluids(); - MinecraftForge.EVENT_BUS.register(FRItems.class); - - GameRegistry.registerFuelHandler(new RoadsFuelHandler()); - } - - @EventHandler - public void postInit(FMLPostInitializationEvent event) { - proxy.postInit(); - PaintGunItemRegistry.init(); - FRBlocks.registerPaintGunEntries(); - RecipeRegistry.init(); - } - - @Mod.EventBusSubscriber - public static class RegistrationHandler { - - @SubscribeEvent - public static void registerItems(RegistryEvent.Register event) { - FRItems.register(event.getRegistry()); - FRBlocks.registerItemBlocks(event.getRegistry()); - } - - @SubscribeEvent - public static void registerBlocks(RegistryEvent.Register event) { - System.out.println("register blocks!!"); - - FRBlocks.register(event.getRegistry()); - FRBlocks.registerTileEntities(); - } - - @SubscribeEvent - public static void registerSounds(RegistryEvent.Register event) { - - } - - @SubscribeEvent - public static void registerModels(ModelRegistryEvent event) { - FRItems.registerModels(); - FRBlocks.registerModels(); - } - } - - public static void debug(int level, String str) { - if (RoadsConfig.general.debugLevel >= level) { - System.out.println("[Fureniku's Roads] " + str); - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/GuiHandler.java b/src/main/java/com/silvaniastudios/roads/GuiHandler.java deleted file mode 100644 index 2b04ec84..00000000 --- a/src/main/java/com/silvaniastudios/roads/GuiHandler.java +++ /dev/null @@ -1,185 +0,0 @@ -package com.silvaniastudios.roads; - -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorContainer; -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorEntity; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherContainer; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherEntity; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerContainer; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerEntity; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorContainer; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerContainer; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenContainer; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenEntity; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryContainer; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryEntity; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterContainer; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterEntity; -import com.silvaniastudios.roads.client.gui.GuiCompactor; -import com.silvaniastudios.roads.client.gui.GuiCrusher; -import com.silvaniastudios.roads.client.gui.GuiFabricator; -import com.silvaniastudios.roads.client.gui.GuiPaintFiller; -import com.silvaniastudios.roads.client.gui.GuiPaintOven; -import com.silvaniastudios.roads.client.gui.GuiRoadFactory; -import com.silvaniastudios.roads.client.gui.GuiTarDistiller; -import com.silvaniastudios.roads.client.gui.GuiTarmacCutter; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.fml.common.network.IGuiHandler; - -public class GuiHandler implements IGuiHandler { - - @Override - public Object getServerGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) { - TileEntity te = world.getTileEntity(new BlockPos(x, y, z)); - if (te != null) { - if (ID == 1) { - return new PaintFillerContainer(player.inventory, (PaintFillerEntity) te, false); - } - if (ID == 2) { - return new TarDistillerContainer(player.inventory, (TarDistillerEntity) te, false); - } - if (ID == 3) { - return new RoadFactoryContainer(player.inventory, (RoadFactoryEntity) te, false); - } - if (ID == 4) { - return new TarmacCutterContainer(player.inventory, (TarmacCutterEntity) te, false); - } - if (ID == 5) { - return new CrusherContainer(player.inventory, (CrusherEntity) te, false); - } - - - if (ID == 6) { - return new PaintFillerContainer(player.inventory, (PaintFillerElectricEntity) te, true); - } - if (ID == 7) { - return new TarDistillerContainer(player.inventory, (TarDistillerElectricEntity) te, true); - } - if (ID == 8) { - return new RoadFactoryContainer(player.inventory, (RoadFactoryElectricEntity) te, true); - } - if (ID == 9) { - return new TarmacCutterContainer(player.inventory, (TarmacCutterElectricEntity) te, true); - } - if (ID == 10) { - return new CrusherContainer(player.inventory, (CrusherElectricEntity) te, true); - } - - if (ID == 11) { - return new PaintOvenContainer(player.inventory, (PaintOvenEntity) te, false); - } - if (ID == 12) { - return new PaintOvenContainer(player.inventory, (PaintOvenElectricEntity) te, true); - } - - if (ID == 13) { - return new CompactorContainer(player.inventory, (CompactorEntity) te, false); - } - if (ID == 14) { - return new CompactorContainer(player.inventory, (CompactorElectricEntity) te, true); - } - - if (ID == 15) { - return new FabricatorContainer(player.inventory, (FabricatorEntity) te, false); - } - if (ID == 16) { - return new FabricatorContainer(player.inventory, (FabricatorElectricEntity) te, true); - } - - System.out.println("You forgot to register GUI ID " + ID + " server-side, idiot."); - } - return null; - } - - @Override - public Object getClientGuiElement(int ID, EntityPlayer player, World world, int x, int y, int z) { - TileEntity te = world.getTileEntity(new BlockPos(x, y, z)); - if (te != null) { - if (ID == 1) { - PaintFillerEntity entity = (PaintFillerEntity) te; - return new GuiPaintFiller(entity, new PaintFillerContainer(player.inventory, entity, false), false); - } - if (ID == 2) { - TarDistillerEntity entity = (TarDistillerEntity) te; - return new GuiTarDistiller(entity, new TarDistillerContainer(player.inventory, entity, false), false); - } - if (ID == 3) { - RoadFactoryEntity entity = (RoadFactoryEntity) te; - return new GuiRoadFactory(entity, new RoadFactoryContainer(player.inventory, entity, false), false); - } - if (ID == 4) { - TarmacCutterEntity entity = (TarmacCutterEntity) te; - return new GuiTarmacCutter(entity, new TarmacCutterContainer(player.inventory, entity, false), false); - } - if (ID == 5) { - CrusherEntity entity = (CrusherEntity) te; - return new GuiCrusher(entity, new CrusherContainer(player.inventory, entity, false), false); - } - - if (ID == 6) { - PaintFillerElectricEntity entity = (PaintFillerElectricEntity) te; - return new GuiPaintFiller(entity, new PaintFillerContainer(player.inventory, entity, true), true); - } - if (ID == 7) { - TarDistillerElectricEntity entity = (TarDistillerElectricEntity) te; - return new GuiTarDistiller(entity, new TarDistillerContainer(player.inventory, entity, true), true); - } - if (ID == 8) { - RoadFactoryElectricEntity entity = (RoadFactoryElectricEntity) te; - return new GuiRoadFactory(entity, new RoadFactoryContainer(player.inventory, entity, true), true); - } - if (ID == 9) { - TarmacCutterElectricEntity entity = (TarmacCutterElectricEntity) te; - return new GuiTarmacCutter(entity, new TarmacCutterContainer(player.inventory, entity, true), true); - } - if (ID == 10) { - CrusherElectricEntity entity = (CrusherElectricEntity) te; - return new GuiCrusher(entity, new CrusherContainer(player.inventory, entity, true), true); - } - - if (ID == 11) { - PaintOvenEntity entity = (PaintOvenEntity) te; - return new GuiPaintOven(entity, new PaintOvenContainer(player.inventory, entity, false), false); - } - if (ID == 12) { - PaintOvenElectricEntity entity = (PaintOvenElectricEntity) te; - return new GuiPaintOven(entity, new PaintOvenContainer(player.inventory, entity, true), true); - } - - if (ID == 13) { - CompactorEntity entity = (CompactorEntity) te; - return new GuiCompactor(entity, new CompactorContainer(player.inventory, entity, false), false); - } - if (ID == 14) { - CompactorElectricEntity entity = (CompactorElectricEntity) te; - return new GuiCompactor(entity, new CompactorContainer(player.inventory, entity, true), true); - } - - if (ID == 15) { - FabricatorEntity entity = (FabricatorEntity) te; - return new GuiFabricator(entity, new FabricatorContainer(player.inventory, entity, false), false); - } - if (ID == 16) { - FabricatorElectricEntity entity = (FabricatorElectricEntity) te; - return new GuiFabricator(entity, new FabricatorContainer(player.inventory, entity, true), true); - } - - System.out.println("You forgot to register GUI ID " + ID + " client-side, idiot."); - } - return null; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/IColour.java b/src/main/java/com/silvaniastudios/roads/IColour.java deleted file mode 100644 index 1e352f31..00000000 --- a/src/main/java/com/silvaniastudios/roads/IColour.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.silvaniastudios.roads; -import net.minecraft.util.text.TextFormatting; - -import java.awt.*; - -public interface IColour { - - String getColourName(); - Color getColour(); - TextFormatting getTextFormat(); -} diff --git a/src/main/java/com/silvaniastudios/roads/RoadsConfig.java b/src/main/java/com/silvaniastudios/roads/RoadsConfig.java deleted file mode 100644 index 8b62c06e..00000000 --- a/src/main/java/com/silvaniastudios/roads/RoadsConfig.java +++ /dev/null @@ -1,149 +0,0 @@ -package com.silvaniastudios.roads; - -import net.minecraftforge.common.config.Config; - -@Config(modid = FurenikusRoads.MODID, name = "Fureniku's Roads") -@Config.LangKey("furenikusroads.config.title_furenikusroads") -public class RoadsConfig { - - @Config.Name("General Settings") - public static General general = new General(); - - @Config.Name("Machine Settings") - public static Machines machine = new Machines(); - - public static class General { - @Config.Comment("If the block under paint is broken, should the paint vanish? \n" - + "(NOTE: 'False' might cause immersion-breaking things, but prevent frustration!)") - public boolean breakPaintOnBlockBreak = true; - - @Config.Comment("How much paint is consumed when you place one block") - public int costToPaint = 50; - - @Config.Comment("Show additional tooltips to help in GUIs (showing names of slots etc) \nPretty much essential if you don't have JEI installed.") - public boolean guiGuide = true; - - @Config.Comment("Whether snow can settle on roads. It will be correctly offset and sit properly on the roads if enabled.") - public boolean snowOnRoads = true; - - @Config.Comment("Add any fluid names here that you want to function as tar in the road factory.") - public String[] tarAlternatives = new String[]{"tar"}; - - @Config.Comment("Print a full list of all fluids in your game on startup, useful for adding tar variants.") - public boolean printFluidListOnStartup = false; - - @Config.Comment("Debug level: 0 (only essential info), 1 (print things about current bugs), 2 (print machine processes), 3 (print everything)") - public int debugLevel = 0; - - @Config.Comment("Hide all paints from JEI. On by default, as they clutter a lot and are confusing for survival players in modpacks. Use the paint gun!") - public boolean hideJEIPaints = true; - - @Config.Comment("Should limestone generate naturally in the world") - public boolean genLimestone = true; - - @Config.Comment("Set to true for low-end machines. This will disable custom rendering on machines and may improve framerate. \nOnly really applicable to survival worlds as it only impacts machines, and not road blocks themselves.") - public boolean performanceMode = false; - - @Config.Comment("Whether barriers should work like fences and prevent you from jumping over them.") - public boolean barriersLikeFences = false; - - @Config.Comment("Skip loading the custom paints from file system. Use this if your environment is crashing due to not making the paints folder.") - public boolean skipCustomPaints = false; - } - - public static class Machines { - @Config.Comment("How often the Crusher processes. Default is 1.5 seconds") - public int crusherTickRate = 30; - @Config.Comment("How often the Crusher processes. Default is 2 seconds") - public int compactorTickRate = 40; - @Config.Comment("How often the Paint Filler processes. Default is 1.25 seconds") - public int fillerTickRate = 25; - @Config.Comment("How often the Road Factory processes. Default is 2.5 seconds") - public int roadFactoryTickRate = 50; - @Config.Comment("How often the Tar Distiller processes. Default is 1.25 seconds") - public int tarDistillerTickRate = 25; - @Config.Comment("How often the Tarmac Cutter processes. Default is 2.5 seconds") - public int tarmacCutterTickRate = 50; - @Config.Comment("How often the Paint Oven processes. Default is 2.5 seconds") - public int paintOvenTickRate = 50; - @Config.Comment("How often the Fabricator processes. Default is 2 seconds") - public int fabricatorTickRate = 40; - - @Config.Comment("How often the Electric Crusher processes. Default is 1.5 seconds") - public int electricCrusherTickRate = 30; - @Config.Comment("How often the Electric Crusher processes. Default is 2 seconds") - public int electricCompactorTickRate = 40; - @Config.Comment("How often the Electric Paint Filler processes. Default is 1.25 seconds") - public int electricFillerTickRate = 25; - @Config.Comment("How often the Electric Road Factory processes. Default is 2.5 seconds") - public int electricRoadFactoryTickRate = 50; - @Config.Comment("How often the Electric Tar Distiller processes. Default is 1.25 seconds") - public int electricTarDistillerTickRate = 25; - @Config.Comment("How often the Electric Tarmac Cutter processes. Default is 2.5 seconds") - public int electricTarmacCutterTickRate = 50; - @Config.Comment("How often the Electric Paint Oven processes. Default is 2.5 seconds") - public int electricPaintOvenTickRate = 50; - @Config.Comment("How often the Electric Fabricator processes. Default is 2 seconds") - public int electricFabricatorTickRate = 40; - - @Config.Comment("How much energy to consume per action.") - public int electricRoadFactoryEnergyConsumption = 1000; - @Config.Comment("How much energy to consume per action.") - public int electricTarDistillerEnergyConsumption = 1000; - @Config.Comment("How much energy to consume per action.") - public int electricTarmacCutterEnergyConsumption = 1000; - @Config.Comment("How much energy to consume per action.") - public int electricCrusherEnergyConsumption = 1000; - @Config.Comment("How much energy to consume per action.") - public int electricCompactorEnergyConsumption = 1000; - @Config.Comment("How much energy to consume per action.") - public int electricPaintFillerEnergyConsumption = 1000; - @Config.Comment("How much energy to consume per action.") - public int electricPaintOvenEnergyConsumption = 1000; - @Config.Comment("How much energy to consume per action.") - public int electricFabricatorEnergyConsumption = 1000; - - @Config.Comment("How much energy the machine can hold") - public int electricRoadFactoryEnergyStorage = 50000; - @Config.Comment("How much energy the machine can hold") - public int electricTarDistillerEnergyStorage = 50000; - @Config.Comment("How much energy the machine can hold") - public int electricTarmacCutterEnergyStorage = 50000; - @Config.Comment("How much energy the machine can hold") - public int electricCrusherEnergyStorage = 50000; - @Config.Comment("How much energy the machine can hold") - public int electricCompactorEnergyStorage = 50000; - @Config.Comment("How much energy the machine can hold") - public int electricPaintFillerEnergyStorage = 50000; - @Config.Comment("How much energy the machine can hold") - public int electricPaintOvenEnergyStorage = 50000; - @Config.Comment("How much energy the machine can hold") - public int electricFabricatorEnergyStorage = 50000; - - @Config.Comment("How much energy can transfer in per tick.") - public int electricRoadFactoryEnergyTransferRate = 100; - @Config.Comment("How much energy can transfer in per tick.") - public int electricTarDistillerEnergyTransferRate = 100; - @Config.Comment("How much energy can transfer in per tick.") - public int electricTarmacCutterEnergyTransferRate = 100; - @Config.Comment("How much energy can transfer in per tick.") - public int electricCrusherEnergyTransferRate = 100; - @Config.Comment("How much energy can transfer in per tick.") - public int electricCompactorEnergyTransferRate = 100; - @Config.Comment("How much energy can transfer in per tick.") - public int electricPaintFillerEnergyTransferRate = 100; - @Config.Comment("How much energy can transfer in per tick.") - public int electricPaintOvenEnergyTransferRate = 100; - @Config.Comment("How much energy can transfer in per tick.") - public int electricFabricatorEnergyTransferRate = 100; - - @Config.Comment("How much tar to move per tick, in mB") - public int tarTransferRate = 50; - - @Config.Comment("How many mB worth of paint one dye gives in the Paint Filler") - public int fillerPaintPerDye = 250; - - @Config.Comment("How many mB worth of paint one dye gives in the Paint Oven") - public int ovenPaintPerDye = 1000; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/WorldGen.java b/src/main/java/com/silvaniastudios/roads/WorldGen.java deleted file mode 100644 index 5b6af08d..00000000 --- a/src/main/java/com/silvaniastudios/roads/WorldGen.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.silvaniastudios.roads; - -import java.util.Random; - -import com.silvaniastudios.roads.blocks.FRBlocks; - -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraft.world.chunk.IChunkProvider; -import net.minecraft.world.gen.IChunkGenerator; -import net.minecraft.world.gen.feature.WorldGenMinable; -import net.minecraftforge.fml.common.IWorldGenerator; - -public class WorldGen implements IWorldGenerator { - - WorldGenMinable limestone; - - @Override - public void generate(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider) { - if (world.provider.getDimension() == 0) { - generateOverworld(random, chunkX, chunkZ, world, chunkGenerator, chunkProvider); - } - } - - private void generateOverworld(Random random, int chunkX, int chunkZ, World world, IChunkGenerator chunkGenerator, IChunkProvider chunkProvider) { - limestone = new WorldGenMinable(FRBlocks.generic_blocks.getStateFromMeta(3), 8); - addOreSpawn(limestone, world, random, chunkX * 16, chunkZ * 16, 12, 30, 80); - } - - private void addOreSpawn(WorldGenMinable wgm, World world, Random random, int x, int z, int vpc, int minY, int maxY) { - int rangeY = maxY - minY; - for (int i = 0; i < vpc; i++) { - BlockPos pos = new BlockPos(x + random.nextInt(16), minY + random.nextInt(rangeY), z + random.nextInt(16)); - wgm.generate(world, random, pos); - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/BlockBase.java b/src/main/java/com/silvaniastudios/roads/blocks/BlockBase.java deleted file mode 100644 index cfe6f2bb..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/BlockBase.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.silvaniastudios.roads.blocks; - -import com.google.common.collect.ImmutableList; -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.client.renderer.block.statemap.DefaultStateMapper; -import net.minecraft.client.renderer.block.statemap.StateMapperBase; -import net.minecraft.item.Item; -import net.minecraft.item.ItemBlock; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class BlockBase extends Block { - - protected String name; - - public BlockBase(String name, Material mat) { - super(mat); - this.name = name; - setUnlocalizedName(FurenikusRoads.MODID + "." + name); - setRegistryName(name); - } - - public void registerItemModel(Item itemBlock) { - FurenikusRoads.proxy.registerItemRenderer(itemBlock, 0, name); - } - - public Item createItemBlock() { - return new ItemBlock(this).setRegistryName(getRegistryName()); - } - - @SideOnly(Side.CLIENT) - public void initModel() { - StateMapperBase b = new DefaultStateMapper(); - BlockStateContainer bsc = this.getBlockState(); - ImmutableList values = bsc.getValidStates(); - - for(IBlockState state : values) { - ModelResourceLocation mrl = new ModelResourceLocation(state.getBlock().getRegistryName(), b.getPropertyString(state.getProperties())); - - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(state.getBlock()), this.getMetaFromState(state), mrl); - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/BlockFakeLight.java b/src/main/java/com/silvaniastudios/roads/blocks/BlockFakeLight.java deleted file mode 100644 index f767269b..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/BlockFakeLight.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.silvaniastudios.roads.blocks; - -import java.util.Random; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.init.Blocks; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -public class BlockFakeLight extends BlockBase { - - public BlockFakeLight(String name) { - super(name, Material.AIR); - this.setCreativeTab(null); - this.setTickRandomly(true); - this.setLightLevel(1.0F); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return new AxisAlignedBB(0.5, 0.5, 0.5, 0.5, 0.5, 0.5); - } - - @Override - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return NULL_AABB; - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - //if (this.getMetaFromState(state) < 15 && face != EnumFacing.DOWN && face != EnumFacing.UP) { //TODO checks for the sake of other blocks culling. - return BlockFaceShape.UNDEFINED; - } - - @Override - public void updateTick(World world, BlockPos pos, IBlockState state, Random rnd) { - if (!findLightBlockAbove(world, pos)) { - world.setBlockToAir(pos); - } - } - - public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack) { - if (!findLightBlockAbove(world, pos)) { - world.setBlockToAir(pos); - } -} - - public boolean findLightBlockAbove(World world, BlockPos pos) { - BlockPos posOffset = pos.offset(EnumFacing.UP); - Block block = world.getBlockState(posOffset).getBlock(); - - int count = 0; - - while (block == Blocks.AIR && count < 15) { - posOffset = posOffset.offset(EnumFacing.UP); - block = world.getBlockState(posOffset).getBlock(); - count++; - if (block != Blocks.AIR) { - if (block.getLightValue(world.getBlockState(posOffset), world, posOffset) == 15) { - return true; - } - return false; - } - } - return false; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/BlockRoadSnow.java b/src/main/java/com/silvaniastudios/roads/blocks/BlockRoadSnow.java deleted file mode 100644 index a066b3e2..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/BlockRoadSnow.java +++ /dev/null @@ -1,96 +0,0 @@ -package com.silvaniastudios.roads.blocks; - -import javax.annotation.Nullable; - -import com.google.common.collect.ImmutableList; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.decorative.CurbBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockSnow; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.client.renderer.block.statemap.DefaultStateMapper; -import net.minecraft.client.renderer.block.statemap.StateMapperBase; -import net.minecraft.item.Item; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class BlockRoadSnow extends BlockSnow { - - protected String name; - - public BlockRoadSnow(String name) { - super(); - this.name = name; - setUnlocalizedName(FurenikusRoads.MODID + "." + name); - setRegistryName(name); - } - - public void registerItemModel(Item itemBlock) { - FurenikusRoads.proxy.registerItemRenderer(itemBlock, 0, name); - } - - public Item createItemBlock() { - return new ItemBlock(this).setRegistryName(getRegistryName()); - } - - @SideOnly(Side.CLIENT) - public void initModel() { - StateMapperBase b = new DefaultStateMapper(); - BlockStateContainer bsc = this.getBlockState(); - ImmutableList values = bsc.getValidStates(); - - for(IBlockState state : values) { - ModelResourceLocation mrl = new ModelResourceLocation(state.getBlock().getRegistryName(), b.getPropertyString(state.getProperties())); - - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(state.getBlock()), this.getMetaFromState(state), mrl); - } - } - - - @SuppressWarnings("deprecation") - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - if (worldIn.getBlockState(pos.offset(EnumFacing.DOWN)).getBlock() instanceof RoadBlock) { - IBlockState roadState = worldIn.getBlockState(pos.offset(EnumFacing.DOWN)); - RoadBlock block = (RoadBlock) roadState.getBlock(); - int meta = block.getMetaFromState(roadState); - return new Vec3d(0, -1 + 0.0625 + (meta*0.0625), 0); - } - return super.getOffset(state, worldIn, pos); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { - return new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(source, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(source, pos)+0.0625, 1.0D); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState blockState, IBlockAccess worldIn, BlockPos pos) { - return NULL_AABB; - } - - @SuppressWarnings("deprecation") - public double getBlockBelowHeight(IBlockAccess worldIn, BlockPos pos) { - IBlockState underState = worldIn.getBlockState(pos.offset(EnumFacing.DOWN)); - Block underBlock = underState.getBlock(); - double extraOffset = 0.0; - - if (underBlock instanceof PaintBlockBase || underBlock instanceof NonPaintRoadTopBlock || underBlock instanceof CurbBlock) { - extraOffset = 0.062; - } - - return underBlock.getBoundingBox(underState, worldIn, pos.offset(EnumFacing.DOWN)).maxY - extraOffset; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/FRBlocks.java b/src/main/java/com/silvaniastudios/roads/blocks/FRBlocks.java deleted file mode 100644 index 5cf9a075..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/FRBlocks.java +++ /dev/null @@ -1,771 +0,0 @@ -package com.silvaniastudios.roads.blocks; - -import java.awt.Color; -import java.util.ArrayList; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.decorative.BarrierBlock; -import com.silvaniastudios.roads.blocks.decorative.BarrierConcreteEdgeBlock; -import com.silvaniastudios.roads.blocks.decorative.BarrierEdgeBlock; -import com.silvaniastudios.roads.blocks.decorative.BarrierEndBlock; -import com.silvaniastudios.roads.blocks.decorative.BarrierLowEdgeBlock; -import com.silvaniastudios.roads.blocks.decorative.BarsBarrierBlock; -import com.silvaniastudios.roads.blocks.decorative.BollardBlock; -import com.silvaniastudios.roads.blocks.decorative.CatsEyeBlock; -import com.silvaniastudios.roads.blocks.decorative.CatsEyeBlockFourWay; -import com.silvaniastudios.roads.blocks.decorative.ConcreteBarrierBlock; -import com.silvaniastudios.roads.blocks.decorative.CurbBlock; -import com.silvaniastudios.roads.blocks.decorative.FoldingBollardBlock; -import com.silvaniastudios.roads.blocks.decorative.MetalPost; -import com.silvaniastudios.roads.blocks.decorative.RetractableBollardBlock; -import com.silvaniastudios.roads.blocks.decorative.SpeedBumpBlock; -import com.silvaniastudios.roads.blocks.decorative.StandardBollardBlock; -import com.silvaniastudios.roads.blocks.decorative.StreetLight; -import com.silvaniastudios.roads.blocks.decorative.WheelStopBlock; -import com.silvaniastudios.roads.blocks.diagonal.RoadBlockDiagonal; -import com.silvaniastudios.roads.blocks.paint.*; -import com.silvaniastudios.roads.blocks.paint.customs.*; -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import com.silvaniastudios.roads.blocks.paint.uniques.ChevronIconPaintBlock; -import com.silvaniastudios.roads.blocks.paint.uniques.HatchBoxPaintBlock; -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorBlock; -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorEntity; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherBlock; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherEntity; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerBlock; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerEntity; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorBlock; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerBlock; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.hopper.PaintFillerHopperBlock; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.hopper.PaintFillerHopperEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenBlock; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenEntity; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryBlock; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryEntity; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterBlock; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterEntity; -import com.silvaniastudios.roads.fluids.FRFluids; -import com.silvaniastudios.roads.items.FRItems; -import com.silvaniastudios.roads.items.RoadItemBlock; -import com.silvaniastudios.roads.registries.CustomPaintModelRegistry; -import com.silvaniastudios.roads.registries.DynamicBlockRegistry; -import com.silvaniastudios.roads.registries.PaintGunItemRegistry; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.item.Item; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.text.TextFormatting; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fluids.BlockFluidClassic; -import net.minecraftforge.fml.common.registry.GameRegistry; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; -import net.minecraftforge.registries.IForgeRegistry; - -public class FRBlocks { - - public static ArrayList col = new ArrayList<>(); - - static { - col.add(new PaintColour("white", 0, 0, TextFormatting.WHITE)); - col.add(new PaintColour("yellow", Color.YELLOW.getRGB(), 1, TextFormatting.YELLOW)); - col.add(new PaintColour("red", Color.RED.getRGB(), 2, TextFormatting.RED)); - } - - private static int colourCount = 3; - - public static PaintColour addNewColour(String name, int colour, TextFormatting formatting) { - FurenikusRoads.debug(0, "Adding colour " + name); - PaintColour paintColour = new PaintColour(name, colour, colourCount, formatting); - col.add(paintColour); - colourCount++; - return paintColour; - } - - public static ArrayList roadBlockList = new ArrayList(); - public static ArrayList roadBlockDiagonalList = new ArrayList(); - public static ArrayList paintBlockList = new ArrayList(); - public static ArrayList catsEyeList = new ArrayList(); - public static ArrayList genericList = new ArrayList(); - - public static ArrayList genTexturesList = new ArrayList(); //For internal/temporary use only, generating textures from grids. - - //Tarmac variants - public static RoadBlock road_block_standard = new RoadBlock("road_block_standard", Material.ROCK, FRItems.tarmac_fragment_standard); - public static RoadBlock road_block_concrete_1 = new RoadBlock("road_block_concrete_1", Material.ROCK, FRItems.tarmac_fragment_concrete_1); - public static RoadBlock road_block_concrete_2 = new RoadBlock("road_block_concrete_2", Material.ROCK, FRItems.tarmac_fragment_concrete_2); - public static RoadBlock road_block_light = new RoadBlock("road_block_light", Material.ROCK, FRItems.tarmac_fragment_light); - public static RoadBlock road_block_fine = new RoadBlock("road_block_fine", Material.ROCK, FRItems.tarmac_fragment_fine); - public static RoadBlock road_block_dark = new RoadBlock("road_block_dark", Material.ROCK, FRItems.tarmac_fragment_dark); - public static RoadBlock road_block_pale = new RoadBlock("road_block_pale", Material.ROCK, FRItems.tarmac_fragment_pale); - public static RoadBlock road_block_red = new RoadBlock("road_block_red", Material.ROCK, FRItems.tarmac_fragment_red); - public static RoadBlock road_block_blue = new RoadBlock("road_block_blue", Material.ROCK, FRItems.tarmac_fragment_blue); - public static RoadBlock road_block_white = new RoadBlock("road_block_white", Material.ROCK, FRItems.tarmac_fragment_white); - public static RoadBlock road_block_yellow = new RoadBlock("road_block_yellow", Material.ROCK, FRItems.tarmac_fragment_yellow); - public static RoadBlock road_block_green = new RoadBlock("road_block_green", Material.ROCK, FRItems.tarmac_fragment_green); - public static RoadBlock road_block_muddy = new RoadBlock("road_block_muddy", Material.GROUND, FRItems.tarmac_fragment_muddy); - public static RoadBlock road_block_muddy_dried = new RoadBlock("road_block_muddy_dried", Material.GROUND, FRItems.tarmac_fragment_muddy); - - public static RoadBlock road_block_stone = new RoadBlock("road_block_stone", Material.ROCK, FRItems.tarmac_fragment_stone); - public static RoadBlock road_block_grass = new RoadBlock("road_block_grass", Material.GRASS, FRItems.tarmac_fragment_grass); - public static RoadBlock road_block_dirt = new RoadBlock("road_block_dirt", Material.GROUND, FRItems.tarmac_fragment_dirt); - public static RoadBlock road_block_gravel = new RoadBlock("road_block_gravel", Material.SAND, FRItems.tarmac_fragment_gravel); - public static RoadBlock road_block_sand = new RoadBlock("road_block_sand", Material.SAND, FRItems.tarmac_fragment_sand); - - public static RoadBlockDiagonal road_block_diagonal_1_1 = new RoadBlockDiagonal("road_block_diagonal_1_1", false, "diagonal_11", 0, 1); - public static RoadBlockDiagonal road_block_diagonal_1_2 = new RoadBlockDiagonal("road_block_diagonal_1_2", false, "diagonal_12", 0, 0.5f); - public static RoadBlockDiagonal road_block_diagonal_1_4 = new RoadBlockDiagonal("road_block_diagonal_1_4", false, "diagonal_14", 0, 0.25f); - public static RoadBlockDiagonal road_block_diagonal_2_4 = new RoadBlockDiagonal("road_block_diagonal_2_4", false, "diagonal_24", 0.25f, 0.5f); - public static RoadBlockDiagonal road_block_diagonal_1_8 = new RoadBlockDiagonal("road_block_diagonal_1_8", false, "diagonal_18", 0, 0.125f); - public static RoadBlockDiagonal road_block_diagonal_2_8 = new RoadBlockDiagonal("road_block_diagonal_2_8", false, "diagonal_28", 0.125f, 0.25f); - public static RoadBlockDiagonal road_block_diagonal_3_8 = new RoadBlockDiagonal("road_block_diagonal_3_8", false, "diagonal_38", 0.25f, 0.375f); - public static RoadBlockDiagonal road_block_diagonal_4_8 = new RoadBlockDiagonal("road_block_diagonal_4_8", false, "diagonal_48", 0.375f, 0.5f); - - public static RoadBlockDiagonal road_block_diagonal_1_1_mirror = new RoadBlockDiagonal("road_block_diagonal_1_1_mirror", true, "diagonal_11_mirror", 0, 1); - public static RoadBlockDiagonal road_block_diagonal_1_2_mirror = new RoadBlockDiagonal("road_block_diagonal_1_2_mirror", true, "diagonal_12_mirror", 0, 0.5f); - public static RoadBlockDiagonal road_block_diagonal_1_4_mirror = new RoadBlockDiagonal("road_block_diagonal_1_4_mirror", true, "diagonal_14_mirror", 0, 0.25f); - public static RoadBlockDiagonal road_block_diagonal_2_4_mirror = new RoadBlockDiagonal("road_block_diagonal_2_4_mirror", true, "diagonal_24_mirror", 0.25f, 0.5f); - public static RoadBlockDiagonal road_block_diagonal_1_8_mirror = new RoadBlockDiagonal("road_block_diagonal_1_8_mirror", true, "diagonal_18_mirror", 0, 0.125f); - public static RoadBlockDiagonal road_block_diagonal_2_8_mirror = new RoadBlockDiagonal("road_block_diagonal_2_8_mirror", true, "diagonal_28_mirror", 0.125f, 0.25f); - public static RoadBlockDiagonal road_block_diagonal_3_8_mirror = new RoadBlockDiagonal("road_block_diagonal_3_8_mirror", true, "diagonal_38_mirror", 0.25f, 0.375f); - public static RoadBlockDiagonal road_block_diagonal_4_8_mirror = new RoadBlockDiagonal("road_block_diagonal_4_8_mirror", true, "diagonal_48_mirror", 0.375f, 0.5f); - - public static CurbBlock kerb_standard = new CurbBlock("kerb_standard", Material.ROCK); - - public static PaintFillerBlock paint_filler = new PaintFillerBlock("paint_filler", false); - public static TarDistillerBlock tar_distiller = new TarDistillerBlock("tar_distiller", false); - public static RoadFactoryBlock road_factory = new RoadFactoryBlock("road_factory", false); - public static TarmacCutterBlock tarmac_cutter = new TarmacCutterBlock("tarmac_cutter", false); - public static CrusherBlock crusher = new CrusherBlock("crusher", false); - public static PaintOvenBlock paint_oven = new PaintOvenBlock("paint_oven", false); - public static CompactorBlock compactor = new CompactorBlock("compactor", false); - public static FabricatorBlock fabricator = new FabricatorBlock("fabricator", false); - - public static PaintFillerBlock paint_filler_electric = new PaintFillerBlock("paint_filler_electric", true); - public static TarDistillerBlock tar_distiller_electric = new TarDistillerBlock("tar_distiller_electric", true); - public static RoadFactoryBlock road_factory_electric = new RoadFactoryBlock("road_factory_electric", true); - public static TarmacCutterBlock tarmac_cutter_electric = new TarmacCutterBlock("tarmac_cutter_electric", true); - public static CrusherBlock crusher_electric = new CrusherBlock("crusher_electric", true); - public static PaintOvenBlock paint_oven_electric = new PaintOvenBlock("paint_oven_electric", true); - public static CompactorBlock compactor_electric = new CompactorBlock("compactor_electric", true); - public static FabricatorBlock fabricator_electric = new FabricatorBlock("fabricator_electric", true); - - public static PaintFillerHopperBlock paint_filler_hopper = new PaintFillerHopperBlock("paint_filler_hopper"); - - public static BlockFluidClassic tar_fluid = (BlockFluidClassic) new BlockFluidClassic(FRFluids.tar, Material.WATER).setUnlocalizedName(FurenikusRoads.MODID + ".tar_fluid").setRegistryName("tar_fluid"); - public static BlockFluidClassic paint_white_fluid = (BlockFluidClassic) new BlockFluidClassic(FRFluids.white_paint, Material.WATER).setUnlocalizedName(FurenikusRoads.MODID + ".paint_white_fluid").setRegistryName("paint_white_fluid"); - public static BlockFluidClassic paint_yellow_fluid = (BlockFluidClassic) new BlockFluidClassic(FRFluids.yellow_paint, Material.WATER).setUnlocalizedName(FurenikusRoads.MODID + ".paint_yellow_fluid").setRegistryName("paint_yellow_fluid"); - public static BlockFluidClassic paint_red_fluid = (BlockFluidClassic) new BlockFluidClassic(FRFluids.red_paint, Material.WATER).setUnlocalizedName(FurenikusRoads.MODID + ".paint_red_fluid").setRegistryName("paint_red_fluid"); - - public static StreetBlock street_block_a = (StreetBlock) new StreetBlock("street_block_a", 16).setCreativeTab(FurenikusRoads.tab_sidewalks); - public static StreetBlock street_block_b = (StreetBlock) new StreetBlock("street_block_b", 16).setCreativeTab(FurenikusRoads.tab_sidewalks); - public static StreetBlock generic_blocks = (StreetBlock) new StreetBlock("generic_blocks", 4).setCreativeTab(FurenikusRoads.tab_sidewalks); - - public static StreetRoadBlock sidewalk = new StreetRoadBlock("sidewalk", Material.ROCK, FRItems.sidewalk_fragment_standard); - public static StreetRoadBlock sidewalk_clean = new StreetRoadBlock("sidewalk_clean", Material.ROCK, FRItems.sidewalk_fragment_clean); - public static StreetRoadBlock sidewalk_dark = new StreetRoadBlock("sidewalk_dark", Material.ROCK, FRItems.sidewalk_fragment_dark); - public static StreetRoadBlock sidewalk_tan = new StreetRoadBlock("sidewalk_tan", Material.ROCK, FRItems.sidewalk_fragment_tan); - //tactile bump under-side tile - - public static NonPaintRoadTopBlock tactile_crossing_bumps = new NonPaintRoadTopBlock("tactile_crossing_bumps"); - public static NonPaintRoadTopBlock manhole_cover_round = new NonPaintRoadTopBlock("manhole_cover_round"); - public static NonPaintRoadTopBlock manhole_cover_square = new NonPaintRoadTopBlock("manhole_cover_square"); - public static NonPaintRoadTopBlock drain_cover_1 = new NonPaintRoadTopBlock("drain_cover_1"); - public static NonPaintRoadTopBlock drain_cover_2 = new NonPaintRoadTopBlock("drain_cover_2"); - - public static BarrierBlock barrier_standard_mid = new BarrierBlock("barrier_standard_mid"); - public static BarrierBlock barrier_tall_mid = new BarrierBlock("barrier_tall_mid"); - public static ConcreteBarrierBlock barrier_concrete_1_mid = new ConcreteBarrierBlock("barrier_concrete_1_mid"); - public static ConcreteBarrierBlock barrier_concrete_2_mid = new ConcreteBarrierBlock("barrier_concrete_2_mid"); - public static BarsBarrierBlock barrier_bars_mid = new BarsBarrierBlock("barrier_bars_mid"); - public static BarsBarrierBlock barrier_bars_mid_2 = new BarsBarrierBlock("barrier_bars_mid_2"); - public static BarsBarrierBlock barrier_bars_mid_3 = new BarsBarrierBlock("barrier_bars_mid_3"); - public static BarsBarrierBlock barrier_bars_mid_concrete_1 = new BarsBarrierBlock("barrier_bars_mid_concrete_1"); - public static BarsBarrierBlock barrier_bars_mid_concrete_2 = new BarsBarrierBlock("barrier_bars_mid_concrete_2"); - public static BarsBarrierBlock barrier_wall_mid_concrete_1 = new BarsBarrierBlock("barrier_wall_mid_concrete_1"); - public static BarsBarrierBlock barrier_wall_mid_concrete_2 = new BarsBarrierBlock("barrier_wall_mid_concrete_2"); - public static BarsBarrierBlock barrier_wall_pole_mid_concrete_1 = new BarsBarrierBlock("barrier_wall_pole_mid_concrete_1"); - public static BarsBarrierBlock barrier_wall_pole_mid_concrete_2 = new BarsBarrierBlock("barrier_wall_pole_mid_concrete_2"); - public static BarsBarrierBlock barrier_low_mid = new BarsBarrierBlock("barrier_low_mid", 0.5F); - public static BarrierEndBlock barrier_end = new BarrierEndBlock("barrier_end"); - - public static BarrierEdgeBlock barrier_bars_edge = new BarrierEdgeBlock("barrier_bars_edge", false); - public static BarrierEdgeBlock barrier_bars_edge_2 = new BarrierEdgeBlock("barrier_bars_edge_2", false); - public static BarrierEdgeBlock barrier_bars_edge_3 = new BarrierEdgeBlock("barrier_bars_edge_3", false); - public static BarrierEdgeBlock barrier_wall_edge_concrete_1 = new BarrierEdgeBlock("barrier_wall_edge_concrete_1", false); - public static BarrierEdgeBlock barrier_wall_edge_concrete_2 = new BarrierEdgeBlock("barrier_wall_edge_concrete_2", false); - public static BarrierEdgeBlock barrier_bars_edge_concrete_1 = new BarrierEdgeBlock("barrier_bars_edge_concrete_1", false); - public static BarrierEdgeBlock barrier_bars_edge_concrete_2 = new BarrierEdgeBlock("barrier_bars_edge_concrete_2", false); - public static BarrierEdgeBlock barrier_standard_edge = new BarrierEdgeBlock("barrier_standard_edge", false); - public static BarrierEdgeBlock barrier_tall_edge = new BarrierEdgeBlock("barrier_tall_edge", false); - public static BarrierConcreteEdgeBlock barrier_concrete_edge_1 = new BarrierConcreteEdgeBlock("barrier_concrete_edge_1"); - public static BarrierConcreteEdgeBlock barrier_concrete_edge_2 = new BarrierConcreteEdgeBlock("barrier_concrete_edge_2"); - public static BarrierEdgeBlock barrier_wall_pole_edge_concrete_1 = new BarrierEdgeBlock("barrier_wall_pole_edge_concrete_1", false); - public static BarrierEdgeBlock barrier_wall_pole_edge_concrete_2 = new BarrierEdgeBlock("barrier_wall_pole_edge_concrete_2", false); - public static BarrierLowEdgeBlock barrier_low_edge = new BarrierLowEdgeBlock("barrier_low_edge", false); - - public static BarrierEdgeBlock barrier_bars_edge_double = new BarrierEdgeBlock("barrier_bars_edge_double", true); - public static BarrierEdgeBlock barrier_bars_edge_double_2 = new BarrierEdgeBlock("barrier_bars_edge_double_2", true); - public static BarrierEdgeBlock barrier_bars_edge_double_3 = new BarrierEdgeBlock("barrier_bars_edge_double_3", true); - public static BarrierEdgeBlock barrier_wall_edge_concrete_1_double = new BarrierEdgeBlock("barrier_wall_edge_concrete_1_double", true); - public static BarrierEdgeBlock barrier_wall_edge_concrete_2_double = new BarrierEdgeBlock("barrier_wall_edge_concrete_2_double", true); - public static BarrierEdgeBlock barrier_bars_edge_concrete_1_double = new BarrierEdgeBlock("barrier_bars_edge_concrete_1_double", true); - public static BarrierEdgeBlock barrier_bars_edge_concrete_2_double = new BarrierEdgeBlock("barrier_bars_edge_concrete_2_double", true); - public static BarrierEdgeBlock barrier_wall_pole_edge_concrete_1_double = new BarrierEdgeBlock("barrier_wall_pole_edge_concrete_1_double", true); - public static BarrierEdgeBlock barrier_wall_pole_edge_concrete_2_double = new BarrierEdgeBlock("barrier_wall_pole_edge_concrete_2_double", true); - public static BarrierEdgeBlock barrier_standard_edge_double = new BarrierEdgeBlock("barrier_standard_edge_double", true); - public static BarrierEdgeBlock barrier_tall_edge_double = new BarrierEdgeBlock("barrier_tall_edge_double", true); - - - public static BollardBlock bollard_1 = new BollardBlock("bollard_1"); - public static StandardBollardBlock bollard_2 = new StandardBollardBlock("bollard_2"); - public static RetractableBollardBlock bollard_3 = new RetractableBollardBlock("bollard_3"); - public static FoldingBollardBlock bollard_folding_smooth_metal = new FoldingBollardBlock("bollard_folding_smooth_metal"); - public static FoldingBollardBlock bollard_folding_black = new FoldingBollardBlock("bollard_folding_black"); - public static FoldingBollardBlock bollard_folding_yellow = new FoldingBollardBlock("bollard_folding_yellow"); - - public static WheelStopBlock wheel_stop = new WheelStopBlock("wheel_stop"); - public static SpeedBumpBlock speed_bump = new SpeedBumpBlock("speed_bump"); - - public static CatsEyeBlock cats_eye_white = new CatsEyeBlock("cats_eye_white", false); - public static CatsEyeBlock cats_eye_yellow = new CatsEyeBlock("cats_eye_yellow", false); - public static CatsEyeBlock cats_eye_red = new CatsEyeBlock("cats_eye_red", false); - public static CatsEyeBlock cats_eye_green = new CatsEyeBlock("cats_eye_green", false); - public static CatsEyeBlock cats_eye_blue = new CatsEyeBlock("cats_eye_blue", false); - public static CatsEyeBlockFourWay cats_eye_red_green = new CatsEyeBlockFourWay("cats_eye_red_green", false); - public static CatsEyeBlockFourWay cats_eye_white_red = new CatsEyeBlockFourWay("cats_eye_white_red", false); - public static CatsEyeBlockFourWay cats_eye_white_yellow = new CatsEyeBlockFourWay("cats_eye_white_yellow", false); - public static CatsEyeBlockFourWay cats_eye_white_green = new CatsEyeBlockFourWay("cats_eye_white_green", false); - public static CatsEyeBlockFourWay cats_eye_yellow_red = new CatsEyeBlockFourWay("cats_eye_yellow_red", false); - - public static CatsEyeBlock cats_eye_white_double = new CatsEyeBlock("cats_eye_white_double", true); - public static CatsEyeBlock cats_eye_yellow_double = new CatsEyeBlock("cats_eye_yellow_double", true); - public static CatsEyeBlock cats_eye_red_double = new CatsEyeBlock("cats_eye_red_double", true); - public static CatsEyeBlock cats_eye_green_double = new CatsEyeBlock("cats_eye_green_double", true); - public static CatsEyeBlock cats_eye_blue_double = new CatsEyeBlock("cats_eye_blue_double", true); - public static CatsEyeBlockFourWay cats_eye_red_green_double = new CatsEyeBlockFourWay("cats_eye_red_green_double", true); - public static CatsEyeBlockFourWay cats_eye_white_red_double = new CatsEyeBlockFourWay("cats_eye_white_red_double", true); - public static CatsEyeBlockFourWay cats_eye_white_yellow_double = new CatsEyeBlockFourWay("cats_eye_white_yellow_double", true); - public static CatsEyeBlockFourWay cats_eye_white_green_double = new CatsEyeBlockFourWay("cats_eye_white_green_double", true); - public static CatsEyeBlockFourWay cats_eye_yellow_red_double = new CatsEyeBlockFourWay("cats_eye_yellow_red_double", true); - - public static MetalPost post_small_vertical = new MetalPost("post_small_vertical", false, 0.125); - public static MetalPost post_small_horizontal = new MetalPost("post_small_horizontal", true, 0.125); - public static MetalPost post_medium_vertical = new MetalPost("post_medium_vertical", false, 0.25); - public static MetalPost post_medium_horizontal = new MetalPost("post_medium_horizontal", true, 0.25); - public static MetalPost post_large_vertical = new MetalPost("post_large_vertical", false, 0.375); - public static MetalPost post_large_horizontal = new MetalPost("post_large_horizontal", true, 0.375); - - public static MetalPost post_small_vertical_2 = new MetalPost("post_small_vertical_2", false, 0.125); - public static MetalPost post_medium_vertical_2 = new MetalPost("post_medium_vertical_2", false, 0.25); - public static MetalPost post_large_vertical_2 = new MetalPost("post_large_vertical_2", false, 0.375); - - public static StreetLight street_light_1 = new StreetLight("street_light_1", 10, 3, 2); - public static StreetLight street_light_2 = new StreetLight("street_light_2", 16, 5, 2); - public static StreetLight street_light_3 = new StreetLight("street_light_3", 10, 2.5, 2); - public static StreetLight street_light_4 = new StreetLight("street_light_4", 16, 2.5, 2); - public static StreetLight street_light_5 = new StreetLight("street_light_5", 16, 3, 5); - public static StreetLight street_light_6 = new StreetLight("street_light_6", 16, 3, 5); - - public static BlockFakeLight fake_light_source = new BlockFakeLight("fake_light_source"); - - public static BlockRoadSnow road_snow = new BlockRoadSnow("road_snow"); - - public static void registerTileEntities() { - GameRegistry.registerTileEntity(PaintFillerEntity.class, new ResourceLocation(FurenikusRoads.MODID, "paint_filler_entity")); - GameRegistry.registerTileEntity(TarDistillerEntity.class, new ResourceLocation(FurenikusRoads.MODID, "tar_distiller_entity")); - GameRegistry.registerTileEntity(RoadFactoryEntity.class, new ResourceLocation(FurenikusRoads.MODID, "road_factory_entity")); - GameRegistry.registerTileEntity(TarmacCutterEntity.class, new ResourceLocation(FurenikusRoads.MODID, "tarmac_cutter_entity")); - GameRegistry.registerTileEntity(CrusherEntity.class, new ResourceLocation(FurenikusRoads.MODID, "crusher_entity")); - GameRegistry.registerTileEntity(PaintOvenEntity.class, new ResourceLocation(FurenikusRoads.MODID, "paint_oven_entity")); - GameRegistry.registerTileEntity(CompactorEntity.class, new ResourceLocation(FurenikusRoads.MODID, "compactor_entity")); - GameRegistry.registerTileEntity(FabricatorEntity.class, new ResourceLocation(FurenikusRoads.MODID, "fabricator_entity")); - - GameRegistry.registerTileEntity(PaintFillerElectricEntity.class, new ResourceLocation(FurenikusRoads.MODID, "paint_filler_electric_entity")); - GameRegistry.registerTileEntity(TarDistillerElectricEntity.class, new ResourceLocation(FurenikusRoads.MODID, "tar_distiller_electric_entity")); - GameRegistry.registerTileEntity(RoadFactoryElectricEntity.class, new ResourceLocation(FurenikusRoads.MODID, "road_factory_electric_entity")); - GameRegistry.registerTileEntity(TarmacCutterElectricEntity.class, new ResourceLocation(FurenikusRoads.MODID, "tarmac_cutter_electric_entity")); - GameRegistry.registerTileEntity(CrusherElectricEntity.class, new ResourceLocation(FurenikusRoads.MODID, "crusher_electric_entity")); - GameRegistry.registerTileEntity(PaintOvenElectricEntity.class, new ResourceLocation(FurenikusRoads.MODID, "paint_oven_electric_entity")); - GameRegistry.registerTileEntity(CompactorElectricEntity.class, new ResourceLocation(FurenikusRoads.MODID, "compactor_electric_entity")); - GameRegistry.registerTileEntity(FabricatorElectricEntity.class, new ResourceLocation(FurenikusRoads.MODID, "fabricator_electric_entity")); - - GameRegistry.registerTileEntity(PaintFillerHopperEntity.class, new ResourceLocation(FurenikusRoads.MODID, "paint_filler_hopper_entity")); - } - - public static void register(IForgeRegistry registry) { - CustomPaintModelRegistry paintRegistry = new CustomPaintModelRegistry(); - - roadBlockList.add(road_block_standard); - roadBlockList.add(road_block_concrete_1); - roadBlockList.add(road_block_concrete_2); - roadBlockList.add(road_block_light); - roadBlockList.add(road_block_fine); - roadBlockList.add(road_block_dark); - roadBlockList.add(road_block_pale); - roadBlockList.add(road_block_red); - roadBlockList.add(road_block_blue); - roadBlockList.add(road_block_white); - roadBlockList.add(road_block_yellow); - roadBlockList.add(road_block_green); - roadBlockList.add(road_block_muddy); - roadBlockList.add(road_block_muddy_dried); - - roadBlockList.add(road_block_stone); - roadBlockList.add(road_block_grass); - roadBlockList.add(road_block_dirt); - roadBlockList.add(road_block_gravel); - roadBlockList.add(road_block_sand); - - roadBlockDiagonalList.add(road_block_diagonal_1_1); - roadBlockDiagonalList.add(road_block_diagonal_1_2); - roadBlockDiagonalList.add(road_block_diagonal_1_4); - roadBlockDiagonalList.add(road_block_diagonal_2_4); - roadBlockDiagonalList.add(road_block_diagonal_1_8); - roadBlockDiagonalList.add(road_block_diagonal_2_8); - roadBlockDiagonalList.add(road_block_diagonal_3_8); - roadBlockDiagonalList.add(road_block_diagonal_4_8); - - roadBlockDiagonalList.add(road_block_diagonal_1_1_mirror); - roadBlockDiagonalList.add(road_block_diagonal_1_2_mirror); - roadBlockDiagonalList.add(road_block_diagonal_1_4_mirror); - roadBlockDiagonalList.add(road_block_diagonal_2_4_mirror); - roadBlockDiagonalList.add(road_block_diagonal_1_8_mirror); - roadBlockDiagonalList.add(road_block_diagonal_2_8_mirror); - roadBlockDiagonalList.add(road_block_diagonal_3_8_mirror); - roadBlockDiagonalList.add(road_block_diagonal_4_8_mirror); - - roadBlockList.add(sidewalk); - roadBlockList.add(sidewalk_clean); - roadBlockList.add(sidewalk_dark); - roadBlockList.add(sidewalk_tan); - - for (int i = 0; i < col.size(); i++) { - paintBlockList.add(new LinePaintBlock("line_" + col.get(i).getName() + "_straight_full", PaintGunItemRegistry.LINES, col.get(i))); - paintBlockList.add(new LinePaintBlock("line_" + col.get(i).getName() + "_straight_thick", PaintGunItemRegistry.LINES, col.get(i))); - paintBlockList.add(new LinePaintBlock("line_" + col.get(i).getName() + "_straight_double", PaintGunItemRegistry.LINES, col.get(i))); - paintBlockList.add(new LinePaintBlock("line_" + col.get(i).getName() + "_straight_double_thick", PaintGunItemRegistry.LINES, col.get(i))); - - paintBlockList.add(new SideLinePaintBlock("line_" + col.get(i).getName() + "_side_double", PaintGunItemRegistry.LINES, col.get(i))); - paintBlockList.add(new SideLinePaintBlock("line_" + col.get(i).getName() + "_side_double_thick", PaintGunItemRegistry.LINES, col.get(i))); - paintBlockList.add(new SideLinePaintBlock("line_" + col.get(i).getName() + "_side_single", PaintGunItemRegistry.LINES, col.get(i))); - paintBlockList.add(new SideLinePaintBlock("line_" + col.get(i).getName() + "_side_single_thick", PaintGunItemRegistry.LINES, col.get(i))); - - paintBlockList.add(new SideLinePaintBlock("line_" + col.get(i).getName() + "_far_side", PaintGunItemRegistry.LINES, col.get(i))); - paintBlockList.add(new SideLinePaintBlock("line_" + col.get(i).getName() + "_far_side_thick", PaintGunItemRegistry.LINES, col.get(i))); - - paintBlockList.add(new SimpleLinePaintBlock("line_" + col.get(i).getName() + "_middle_half_double", PaintGunItemRegistry.LINES, col.get(i))); - paintBlockList.add(new SimpleLinePaintBlock("line_" + col.get(i).getName() + "_middle_dash_double", PaintGunItemRegistry.LINES,col.get(i))); - paintBlockList.add(new SimpleLinePaintBlock("line_" + col.get(i).getName() + "_middle_short", PaintGunItemRegistry.LINES, col.get(i))); - paintBlockList.add(new SimpleLinePaintBlock("line_" + col.get(i).getName() + "_filter_lane", PaintGunItemRegistry.LINES, col.get(i))); - paintBlockList.add(new SimpleLinePaintBlock("line_" + col.get(i).getName() + "_side_short", PaintGunItemRegistry.LINES, col.get(i))); - paintBlockList.add(new SimpleLinePaintBlock("line_" + col.get(i).getName() + "_thin_crossing", PaintGunItemRegistry.LINES, col.get(i))); - - paintBlockList.add(new CustomPaintBlock(col.get(i).getName() + "_wheelchair_icon", CustomPaintBlock.EnumPaintType.ICON_1x1, new PaintGrid[] {paintRegistry.wheelchair_icon}, PaintGunItemRegistry.ICONS, new int[] {0}, col.get(i), FurenikusRoads.tab_paint_icons)); - paintBlockList.add(new CustomPaintBlock(col.get(i).getName() + "_chevron", CustomPaintBlock.EnumPaintType.ICON_1x1, new PaintGrid[] {paintRegistry.chevron_icon}, PaintGunItemRegistry.ICONS, new int[] {0}, col.get(i), FurenikusRoads.tab_paint_icons)); - - paintBlockList.add(new Custom1x2PaintBlock(col.get(i).getName() + "_pedestrian", new PaintGrid[] {paintRegistry.pedestrian_low, paintRegistry.pedestrian_high}, PaintGunItemRegistry.ICONS, col.get(i))); - paintBlockList.add(new Custom1x2PaintBlock(col.get(i).getName() + "_merge_arrow", new PaintGrid[] {paintRegistry.merge_arrow_low, paintRegistry.merge_arrow_high}, PaintGunItemRegistry.ICONS, col.get(i))); - paintBlockList.add(new Custom1x2PaintBlock(col.get(i).getName() + "_give_way", new PaintGrid[] {paintRegistry.give_way_low, paintRegistry.give_way_high}, PaintGunItemRegistry.ICONS, col.get(i))); - - //TODO Skipping - paintBlockList.add(new JunctionFilterLinePaintBlock(col.get(i).getName() + "_junction_filter_left", true, PaintGunItemRegistry.JUNCTIONS, new int[] {0}, true, col.get(i))); - paintBlockList.add(new JunctionFilterLinePaintBlock(col.get(i).getName() + "_junction_filter_left_thin", true, PaintGunItemRegistry.JUNCTIONS, new int[] {0}, true, col.get(i))); - paintBlockList.add(new JunctionFilterLinePaintBlock(col.get(i).getName() + "_junction_filter_left_empty", true, PaintGunItemRegistry.JUNCTIONS, new int[] {0}, true, col.get(i))); - paintBlockList.add(new JunctionFilterLinePaintBlock(col.get(i).getName() + "_junction_filter_right", false, PaintGunItemRegistry.JUNCTIONS, new int[] {0}, true, col.get(i))); - paintBlockList.add(new JunctionFilterLinePaintBlock(col.get(i).getName() + "_junction_filter_right_thin", false, PaintGunItemRegistry.JUNCTIONS, new int[] {0}, true, col.get(i))); - paintBlockList.add(new JunctionFilterLinePaintBlock(col.get(i).getName() + "_junction_filter_right_empty", false, PaintGunItemRegistry.JUNCTIONS, new int[] {0}, true, col.get(i))); - - paintBlockList.add(new Custom1x4PaintBlock(col.get(i).getName() + "_junction_fork_mid", new PaintGrid[]{paintRegistry.junction_mid_1, paintRegistry.junction_mid_2, paintRegistry.junction_mid_3, paintRegistry.empty}, PaintGunItemRegistry.JUNCTIONS, col.get(i), false)); - paintBlockList.add(new Custom1x4PaintBlock(col.get(i).getName() + "_junction_fork_mid_thin", new PaintGrid[]{paintRegistry.junction_mid_thin_1, paintRegistry.junction_mid_thin_2, paintRegistry.junction_mid_thin_3, paintRegistry.empty}, PaintGunItemRegistry.JUNCTIONS, col.get(i), false)); - paintBlockList.add(new Custom1x4PaintBlock(col.get(i).getName() + "_junction_fork_chevron_mid", new PaintGrid[]{paintRegistry.junction_mid_1, paintRegistry.junction_mid_chevron_2, paintRegistry.junction_mid_chevron_3, paintRegistry.junction_mid_chevron_4}, PaintGunItemRegistry.JUNCTIONS, col.get(i), false)); - paintBlockList.add(new Custom1x4PaintBlock(col.get(i).getName() + "_junction_fork_chevron_mid_thin", new PaintGrid[]{paintRegistry.junction_mid_thin_1, paintRegistry.junction_mid_thin_2, paintRegistry.junction_mid_chevron_thin_3, paintRegistry.chevron_mid_thin_1}, PaintGunItemRegistry.JUNCTIONS, col.get(i), false)); - - //TODO Skipping - paintBlockList.add(new ChevronPaintBlock(col.get(i).getName() + "_chevron_left_a", ChevronPaintBlock.EnumJunctionConnections.CHEVRON_A, true, PaintGunItemRegistry.JUNCTIONS, new int[] {0}, true, col.get(i))); - paintBlockList.add(new ChevronPaintBlock(col.get(i).getName() + "_chevron_left_b", ChevronPaintBlock.EnumJunctionConnections.CHEVRON_B, false, PaintGunItemRegistry.JUNCTIONS, null, true, col.get(i))); - paintBlockList.add(new ChevronPaintBlock(col.get(i).getName() + "_chevron_left_a_thin", ChevronPaintBlock.EnumJunctionConnections.CHEVRON_THIN_A, true, PaintGunItemRegistry.JUNCTIONS, new int[] {0}, true, col.get(i))); - paintBlockList.add(new ChevronPaintBlock(col.get(i).getName() + "_chevron_left_b_thin", ChevronPaintBlock.EnumJunctionConnections.CHEVRON_THIN_B, false, PaintGunItemRegistry.JUNCTIONS, null, true, col.get(i))); - paintBlockList.add(new ChevronPaintBlock(col.get(i).getName() + "_chevron_right_a", ChevronPaintBlock.EnumJunctionConnections.CHEVRON_A, true, PaintGunItemRegistry.JUNCTIONS, new int[] {0}, true, col.get(i))); - paintBlockList.add(new ChevronPaintBlock(col.get(i).getName() + "_chevron_right_b", ChevronPaintBlock.EnumJunctionConnections.CHEVRON_B, false, PaintGunItemRegistry.JUNCTIONS, null, true, col.get(i))); - paintBlockList.add(new ChevronPaintBlock(col.get(i).getName() + "_chevron_right_a_thin", ChevronPaintBlock.EnumJunctionConnections.CHEVRON_THIN_A, true, PaintGunItemRegistry.JUNCTIONS, new int[] {0}, true, col.get(i))); - paintBlockList.add(new ChevronPaintBlock(col.get(i).getName() + "_chevron_right_b_thin", ChevronPaintBlock.EnumJunctionConnections.CHEVRON_THIN_B, false, PaintGunItemRegistry.JUNCTIONS, null, true, col.get(i))); - - paintBlockList.add(new CustomMetaPaintBlock(col.get(i).getName() + "_junction_side_line_connection", CustomPaintBlock.EnumPaintType.ICON_1x1, new PaintGrid[] {paintRegistry.junction_side_line_connection_a, paintRegistry.junction_side_line_connection_b, paintRegistry.junction_side_line_connection_c, paintRegistry.junction_side_line_connection_d}, PaintGunItemRegistry.JUNCTIONS, new int[] {0, 4, 8, 12}, col.get(i), FurenikusRoads.tab_paint_junction)); - paintBlockList.add(new CustomMetaPaintBlock(col.get(i).getName() + "_junction_side_line_connection_thin", CustomPaintBlock.EnumPaintType.ICON_1x1, new PaintGrid[] {paintRegistry.junction_side_line_connection_thin_a, paintRegistry.junction_side_line_connection_thin_b, paintRegistry.junction_side_line_connection_thin_c, paintRegistry.junction_side_line_connection_thin_d}, PaintGunItemRegistry.JUNCTIONS, new int[] {0, 4, 8, 12}, col.get(i), FurenikusRoads.tab_paint_junction)); - paintBlockList.add(new CustomMetaPaintBlock(col.get(i).getName() + "_junction_side_line_connection_thick_thick", CustomPaintBlock.EnumPaintType.ICON_1x1, new PaintGrid[] {paintRegistry.junction_side_line_connection_thick_thick_a, paintRegistry.junction_side_line_connection_thick_thick_b, paintRegistry.junction_side_line_connection_thick_thick_c, paintRegistry.junction_side_line_connection_thick_thick_d}, PaintGunItemRegistry.JUNCTIONS, new int[] {0, 4, 8, 12}, col.get(i), FurenikusRoads.tab_paint_junction)); - paintBlockList.add(new CustomMetaPaintBlock(col.get(i).getName() + "_junction_mid_line_connection", CustomPaintBlock.EnumPaintType.ICON_1x1, new PaintGrid[] {paintRegistry.junction_mid_line_connection_a, paintRegistry.junction_mid_line_connection_b, paintRegistry.junction_mid_line_connection_c, paintRegistry.junction_mid_line_connection_d}, PaintGunItemRegistry.JUNCTIONS, new int[] {0, 4, 8, 12}, col.get(i), FurenikusRoads.tab_paint_junction)); - paintBlockList.add(new CustomMetaPaintBlock(col.get(i).getName() + "_junction_a", CustomPaintBlock.EnumPaintType.ICON_1x1, new PaintGrid[] {paintRegistry.junction_in_a, paintRegistry.junction_out_b, paintRegistry.junction_mid_a}, PaintGunItemRegistry.ICONS, new int[] {0, 4, 8}, col.get(i), FurenikusRoads.tab_paint_junction)); - paintBlockList.add(new CustomMetaPaintBlock(col.get(i).getName() + "_junction_b", CustomPaintBlock.EnumPaintType.ICON_1x1, new PaintGrid[] {paintRegistry.junction_in_b, paintRegistry.junction_out_a, paintRegistry.junction_mid_b}, PaintGunItemRegistry.ICONS, new int[] {0, 4, 8}, col.get(i), FurenikusRoads.tab_paint_junction)); - - paintBlockList.add(new ChevronIconPaintBlock(col.get(i).getName() + "_chevron_mid", new PaintGrid[] {paintRegistry.chevron_mid_1, paintRegistry.chevron_mid_2, paintRegistry.chevron_mid_thin_1, paintRegistry.chevron_mid_thin_2}, PaintGunItemRegistry.JUNCTIONS, col.get(i))); - paintBlockList.add(new ChevronIconPaintBlock(col.get(i).getName() + "_chevron_mid_left", new PaintGrid[] {paintRegistry.chevron_mid_left_1, paintRegistry.chevron_mid_left_2, paintRegistry.chevron_mid_thin_left_1, paintRegistry.chevron_mid_thin_left_2}, PaintGunItemRegistry.JUNCTIONS, col.get(i))); - paintBlockList.add(new ChevronIconPaintBlock(col.get(i).getName() + "_chevron_mid_right", new PaintGrid[] {paintRegistry.chevron_mid_right_1, paintRegistry.chevron_mid_right_2, paintRegistry.chevron_mid_thin_right_1, paintRegistry.chevron_mid_thin_right_2}, PaintGunItemRegistry.JUNCTIONS, col.get(i))); - - //TODO skipping - paintBlockList.add(new ChevronSideLinePaintBlock(col.get(i).getName() + "_chevron_side_line", PaintGunItemRegistry.JUNCTIONS, new int[] {0}, false, col.get(i))); - - //TODO - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_slow", new PaintGrid[]{paintRegistry.text_slow_small, paintRegistry.text_slow_l, paintRegistry.text_slow_m, paintRegistry.text_slow_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_stop", new PaintGrid[]{paintRegistry.text_stop_small, paintRegistry.text_stop_l, paintRegistry.text_stop_m, paintRegistry.text_stop_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_bike", new PaintGrid[]{paintRegistry.text_bike_small, paintRegistry.text_bike_l, paintRegistry.text_bike_m, paintRegistry.text_bike_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_bus", new PaintGrid[]{paintRegistry.text_bus_small, paintRegistry.text_bus_l, paintRegistry.text_bus_m, paintRegistry.text_bus_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_taxi", new PaintGrid[]{paintRegistry.text_taxi_small, paintRegistry.text_taxi_l, paintRegistry.text_taxi_m, paintRegistry.text_taxi_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_lane", new PaintGrid[]{paintRegistry.text_lane_small, paintRegistry.text_lane_l, paintRegistry.text_lane_m, paintRegistry.text_lane_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_keep", new PaintGrid[]{paintRegistry.text_keep_small, paintRegistry.text_keep_l, paintRegistry.text_keep_m, paintRegistry.text_keep_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_clear", new PaintGrid[]{paintRegistry.text_clear_small, paintRegistry.text_clear_l, paintRegistry.text_clear_m, paintRegistry.text_clear_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_turn", new PaintGrid[]{paintRegistry.text_turn_small, paintRegistry.text_turn_l, paintRegistry.text_turn_m, paintRegistry.text_turn_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_left", new PaintGrid[]{paintRegistry.text_left_small, paintRegistry.text_left_l, paintRegistry.text_left_m, paintRegistry.text_left_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_right", new PaintGrid[]{paintRegistry.text_right_small, paintRegistry.text_right_l, paintRegistry.text_right_m, paintRegistry.text_right_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_only", new PaintGrid[]{paintRegistry.text_only_small, paintRegistry.text_only_l, paintRegistry.text_only_m, paintRegistry.text_only_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_no", new PaintGrid[]{paintRegistry.text_no_small, paintRegistry.text_no_l, paintRegistry.text_no_m, paintRegistry.text_no_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_entry", new PaintGrid[]{paintRegistry.text_entry_small, paintRegistry.text_entry_l, paintRegistry.text_entry_m, paintRegistry.text_entry_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_bike_icon", new PaintGrid[]{paintRegistry.text_bike_icon_small, paintRegistry.text_bike_icon_l, paintRegistry.text_bike_icon_m, paintRegistry.text_bike_icon_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_town", new PaintGrid[]{paintRegistry.text_town_small, paintRegistry.text_town_l, paintRegistry.text_town_m, paintRegistry.text_town_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_city", new PaintGrid[]{paintRegistry.text_city_small, paintRegistry.text_city_l, paintRegistry.text_city_m, paintRegistry.text_city_r}, PaintGunItemRegistry.TEXT, col.get(i))); - paintBlockList.add(new LargeTextPaintBlock(col.get(i).getName() + "_ctre", new PaintGrid[]{paintRegistry.text_ctre_small, paintRegistry.text_ctre_l, paintRegistry.text_ctre_m, paintRegistry.text_ctre_r}, PaintGunItemRegistry.TEXT, col.get(i))); - - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_ab", new PaintGrid[]{paintRegistry.letter_a, paintRegistry.letter_b}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_cd", new PaintGrid[]{paintRegistry.letter_c, paintRegistry.letter_d}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_ef", new PaintGrid[]{paintRegistry.letter_e, paintRegistry.letter_f}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_gh", new PaintGrid[]{paintRegistry.letter_g, paintRegistry.letter_h}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_ij", new PaintGrid[]{paintRegistry.letter_i, paintRegistry.letter_j}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_kl", new PaintGrid[]{paintRegistry.letter_k, paintRegistry.letter_l}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_mn", new PaintGrid[]{paintRegistry.letter_m, paintRegistry.letter_n}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_op", new PaintGrid[]{paintRegistry.letter_o, paintRegistry.letter_p}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_qr", new PaintGrid[]{paintRegistry.letter_q, paintRegistry.letter_r}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_st", new PaintGrid[]{paintRegistry.letter_s, paintRegistry.letter_t}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_uv", new PaintGrid[]{paintRegistry.letter_u, paintRegistry.letter_v}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_wx", new PaintGrid[]{paintRegistry.letter_w, paintRegistry.letter_x}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_yz", new PaintGrid[]{paintRegistry.letter_y, paintRegistry.letter_z}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_01", new PaintGrid[]{paintRegistry.number_0, paintRegistry.number_1}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_23", new PaintGrid[]{paintRegistry.number_2, paintRegistry.number_3}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_45", new PaintGrid[]{paintRegistry.number_4, paintRegistry.number_5}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_67", new PaintGrid[]{paintRegistry.number_6, paintRegistry.number_7}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_89", new PaintGrid[]{paintRegistry.number_8, paintRegistry.number_9}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_punct_question_exclamation", new PaintGrid[]{paintRegistry.punct_question, paintRegistry.punct_exclamation}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - paintBlockList.add(new CustomPaintWallBlock("paint_letter_" + col.get(i).getName() + "_punct_hash_slash", new PaintGrid[]{paintRegistry.punct_hash, paintRegistry.punct_slash}, PaintGunItemRegistry.LETTERS, new int[] {0, 8}, col.get(i), FurenikusRoads.tab_paint_letters)); - - paintBlockList.add(new HatchBoxPaintBlock("hatch_box_" + col.get(i).getName(), PaintGunItemRegistry.ICONS, new int[] {0}, true, col.get(i))); - paintBlockList.add(new Custom1x4PaintBlock("line_" + col.get(i).getName() + "_crossing_diagonal", new PaintGrid[]{paintRegistry.crossing_diagonal_1, paintRegistry.crossing_diagonal_2, paintRegistry.crossing_diagonal_3, paintRegistry.crossing_diagonal_4}, PaintGunItemRegistry.ICONS, col.get(i), true)); - paintBlockList.add(new CrossingPaintBlock(col.get(i).getName() + "_crossing_paint", PaintGunItemRegistry.ICONS, new int[] {0}, true, col.get(i))); - - paintBlockList.add(new ArrowPaintBlock(col.get(i).getName() + "_arrow", PaintGunItemRegistry.ICONS, new int[] {0, 4}, true, col.get(i))); - paintBlockList.add(new ArrowLinePaintBlock(col.get(i).getName() + "_arrow_line", PaintGunItemRegistry.ICONS, new int[] {0}, true, col.get(i))); - paintBlockList.add(new ArrowDiagonalPaintBlock(col.get(i).getName() + "_arrow_diagonal", PaintGunItemRegistry.ICONS, new int[] {0, 4}, true, col.get(i))); - } - - catsEyeList.add(cats_eye_white); - catsEyeList.add(cats_eye_yellow); - catsEyeList.add(cats_eye_red); - catsEyeList.add(cats_eye_green); - catsEyeList.add(cats_eye_blue); - catsEyeList.add(cats_eye_red_green); - catsEyeList.add(cats_eye_white_red); - catsEyeList.add(cats_eye_white_yellow); - catsEyeList.add(cats_eye_white_green); - catsEyeList.add(cats_eye_yellow_red); - - catsEyeList.add(cats_eye_white_double); - catsEyeList.add(cats_eye_yellow_double); - catsEyeList.add(cats_eye_red_double); - catsEyeList.add(cats_eye_green_double); - catsEyeList.add(cats_eye_blue_double); - catsEyeList.add(cats_eye_red_green_double); - catsEyeList.add(cats_eye_white_red_double); - catsEyeList.add(cats_eye_white_yellow_double); - catsEyeList.add(cats_eye_white_green_double); - catsEyeList.add(cats_eye_yellow_red_double); - - genericList.add(post_small_vertical); - genericList.add(post_small_horizontal); - genericList.add(post_medium_vertical); - genericList.add(post_medium_horizontal); - genericList.add(post_large_vertical); - genericList.add(post_large_horizontal); - - genericList.add(post_small_vertical_2); - genericList.add(post_medium_vertical_2); - genericList.add(post_large_vertical_2); - - genericList.add(street_light_1); - genericList.add(street_light_2); - genericList.add(street_light_3); - genericList.add(street_light_4); - genericList.add(street_light_5); - genericList.add(street_light_6); - genericList.add(barrier_end); - - genericList.add(barrier_standard_mid); - genericList.add(barrier_tall_mid); - genericList.add(barrier_concrete_1_mid); - genericList.add(barrier_concrete_2_mid); - - genericList.add(barrier_bars_mid); - genericList.add(barrier_bars_mid_2); - genericList.add(barrier_bars_mid_3); - genericList.add(barrier_wall_mid_concrete_1); - genericList.add(barrier_wall_mid_concrete_2); - genericList.add(barrier_bars_mid_concrete_1); - genericList.add(barrier_bars_mid_concrete_2); - genericList.add(barrier_wall_pole_mid_concrete_1); - genericList.add(barrier_wall_pole_mid_concrete_2); - genericList.add(barrier_low_mid); - - genericList.add(barrier_standard_edge); - genericList.add(barrier_tall_edge); - genericList.add(barrier_concrete_edge_1); - genericList.add(barrier_concrete_edge_2); - - genericList.add(barrier_bars_edge); - genericList.add(barrier_bars_edge_2); - genericList.add(barrier_bars_edge_3); - genericList.add(barrier_wall_edge_concrete_1); - genericList.add(barrier_wall_edge_concrete_2); - genericList.add(barrier_bars_edge_concrete_1); - genericList.add(barrier_bars_edge_concrete_2); - genericList.add(barrier_wall_pole_edge_concrete_1); - genericList.add(barrier_wall_pole_edge_concrete_2); - genericList.add(barrier_low_edge); - - genericList.add(barrier_bars_edge_double); - genericList.add(barrier_bars_edge_double_2); - genericList.add(barrier_bars_edge_double_3); - genericList.add(barrier_wall_edge_concrete_1_double); - genericList.add(barrier_wall_edge_concrete_2_double); - genericList.add(barrier_bars_edge_concrete_1_double); - genericList.add(barrier_bars_edge_concrete_2_double); - genericList.add(barrier_wall_pole_edge_concrete_1_double); - genericList.add(barrier_wall_pole_edge_concrete_2_double); - genericList.add(barrier_standard_edge_double); - genericList.add(barrier_tall_edge_double); - - genericList.add(bollard_1); - genericList.add(bollard_2); - genericList.add(bollard_3); - genericList.add(bollard_folding_smooth_metal); - genericList.add(bollard_folding_black); - genericList.add(bollard_folding_yellow); - - genericList.add(wheel_stop); - genericList.add(speed_bump); - - genericList.add(fake_light_source); - - registry.registerAll( - paint_filler, - tar_distiller, - road_factory, - tarmac_cutter, - crusher, - paint_oven, - compactor, - fabricator, - - paint_filler_electric, - tar_distiller_electric, - road_factory_electric, - tarmac_cutter_electric, - crusher_electric, - paint_oven_electric, - compactor_electric, - fabricator_electric, - - paint_filler_hopper, - - tar_fluid, - paint_white_fluid, - paint_yellow_fluid, - paint_red_fluid, - - kerb_standard, - - street_block_a, - street_block_b, - generic_blocks, - - tactile_crossing_bumps, - manhole_cover_round, - manhole_cover_square, - drain_cover_1, - drain_cover_2, - road_snow - ); - - for (int i = 0; i < roadBlockList.size(); i++) { registry.register(roadBlockList.get(i)); } - for (int i = 0; i < roadBlockDiagonalList.size(); i++) { registry.register(roadBlockDiagonalList.get(i)); } - for (int i = 0; i < paintBlockList.size(); i++) { registry.register(paintBlockList.get(i)); } - for (int i = 0; i < genericList.size(); i++) { registry.register(genericList.get(i)); } - for (int i = 0; i < catsEyeList.size(); i++) { registry.register(catsEyeList.get(i)); } - for (int i = 0; i < DynamicBlockRegistry.customPaints.size(); i++) { registry.register(DynamicBlockRegistry.customPaints.get(i)); } - } - - public static void registerItemBlocks(IForgeRegistry registry) { - for (int i = 0; i < roadBlockList.size(); i++) { registry.register(new RoadItemBlock(roadBlockList.get(i)).setRegistryName(roadBlockList.get(i).getRegistryName())); } - for (int i = 0; i < roadBlockDiagonalList.size(); i++) { registry.register(new RoadItemBlock(roadBlockDiagonalList.get(i)).setRegistryName(roadBlockDiagonalList.get(i).getRegistryName())); } - for (int i = 0; i < paintBlockList.size(); i++) { registry.register(new RoadItemBlock(paintBlockList.get(i)).setRegistryName(paintBlockList.get(i).getRegistryName())); } - for (int i = 0; i < genericList.size(); i++) { registry.register(new RoadItemBlock(genericList.get(i)).setRegistryName(genericList.get(i).getRegistryName())); } - for (int i = 0; i < catsEyeList.size(); i++) { registry.register(new RoadItemBlock(catsEyeList.get(i)).setRegistryName(catsEyeList.get(i).getRegistryName())); } - for (int i = 0; i < DynamicBlockRegistry.customPaints.size(); i++) { registry.register(new RoadItemBlock(DynamicBlockRegistry.customPaints.get(i)).setRegistryName(DynamicBlockRegistry.customPaints.get(i).getRegistryName()));} - - registry.register(new RoadItemBlock(paint_filler).setRegistryName(paint_filler.getRegistryName())); - registry.register(new RoadItemBlock(tar_distiller).setRegistryName(tar_distiller.getRegistryName())); - registry.register(new RoadItemBlock(road_factory).setRegistryName(road_factory.getRegistryName())); - registry.register(new RoadItemBlock(tarmac_cutter).setRegistryName(tarmac_cutter.getRegistryName())); - registry.register(new RoadItemBlock(crusher).setRegistryName(crusher.getRegistryName())); - registry.register(new RoadItemBlock(paint_oven).setRegistryName(paint_oven.getRegistryName())); - registry.register(new RoadItemBlock(compactor).setRegistryName(compactor.getRegistryName())); - registry.register(new RoadItemBlock(fabricator).setRegistryName(fabricator.getRegistryName())); - - registry.register(new RoadItemBlock(paint_filler_electric).setRegistryName(paint_filler_electric.getRegistryName())); - registry.register(new RoadItemBlock(tar_distiller_electric).setRegistryName(tar_distiller_electric.getRegistryName())); - registry.register(new RoadItemBlock(road_factory_electric).setRegistryName(road_factory_electric.getRegistryName())); - registry.register(new RoadItemBlock(tarmac_cutter_electric).setRegistryName(tarmac_cutter_electric.getRegistryName())); - registry.register(new RoadItemBlock(crusher_electric).setRegistryName(crusher_electric.getRegistryName())); - registry.register(new RoadItemBlock(paint_oven_electric).setRegistryName(paint_oven_electric.getRegistryName())); - registry.register(new RoadItemBlock(compactor_electric).setRegistryName(compactor_electric.getRegistryName())); - registry.register(new RoadItemBlock(fabricator_electric).setRegistryName(fabricator_electric.getRegistryName())); - - registry.register(new RoadItemBlock(paint_filler_hopper).setRegistryName(paint_filler_hopper.getRegistryName())); - - registry.register(new RoadItemBlock(tar_fluid).setRegistryName(tar_fluid.getRegistryName())); - registry.register(new RoadItemBlock(paint_white_fluid).setRegistryName(paint_white_fluid.getRegistryName())); - registry.register(new RoadItemBlock(paint_yellow_fluid).setRegistryName(paint_yellow_fluid.getRegistryName())); - registry.register(new RoadItemBlock(paint_red_fluid).setRegistryName(paint_red_fluid.getRegistryName())); - - registry.register(new RoadItemBlock(kerb_standard).setRegistryName(kerb_standard.getRegistryName())); - - registry.register(new RoadItemBlock(street_block_a).setRegistryName(street_block_a.getRegistryName())); - registry.register(new RoadItemBlock(street_block_b).setRegistryName(street_block_b.getRegistryName())); - registry.register(new RoadItemBlock(generic_blocks).setRegistryName(generic_blocks.getRegistryName())); - - registry.register(new RoadItemBlock(tactile_crossing_bumps).setRegistryName(tactile_crossing_bumps.getRegistryName())); - registry.register(new RoadItemBlock(manhole_cover_round).setRegistryName(manhole_cover_round.getRegistryName())); - registry.register(new RoadItemBlock(manhole_cover_square).setRegistryName(manhole_cover_square.getRegistryName())); - registry.register(new RoadItemBlock(drain_cover_1).setRegistryName(drain_cover_1.getRegistryName())); - registry.register(new RoadItemBlock(drain_cover_2).setRegistryName(drain_cover_2.getRegistryName())); - registry.register(new RoadItemBlock(road_snow).setRegistryName(road_snow.getRegistryName())); - } - - public static void registerClientItemModels() { - for (int i = 0; i < roadBlockDiagonalList.size(); i++) { - roadBlockDiagonalList.get(i).initItemModel(); - } - - for (int i = 0; i < paintBlockList.size(); i++) { - if (paintBlockList.get(i) instanceof PaintBlockCustomRenderBase) { - PaintBlockCustomRenderBase block = (PaintBlockCustomRenderBase) paintBlockList.get(i); - block.initItemModel(); - } - } - - for (int i = 0; i < DynamicBlockRegistry.customPaints.size(); i++) { - CustomPaintBlock block = DynamicBlockRegistry.customPaints.get(i); - block.initItemModel(); - } - } - - public static void registerModels() { - for (int i = 0; i < roadBlockList.size(); i++) { roadBlockList.get(i).initModel(); } - for (int i = 0; i < roadBlockDiagonalList.size(); i++) { roadBlockDiagonalList.get(i).initModel(); } - for (int i = 0; i < paintBlockList.size(); i++) { paintBlockList.get(i).initModel(); } - for (int i = 0; i < genericList.size(); i++) { genericList.get(i).initModel(); } - for (int i = 0; i < catsEyeList.size(); i++) { catsEyeList.get(i).initModel(); } - for (int i = 0; i < DynamicBlockRegistry.customPaints.size(); i++) { DynamicBlockRegistry.customPaints.get(i).initModel(); } - - paint_filler.initModel(); - tar_distiller.initModel(); - road_factory.initModel(); - tarmac_cutter.initModel(); - crusher.initModel(); - paint_oven.initModel(); - compactor.initModel(); - fabricator.initModel(); - - paint_filler_electric.initModel(); - tar_distiller_electric.initModel(); - road_factory_electric.initModel(); - tarmac_cutter_electric.initModel(); - crusher_electric.initModel(); - paint_oven_electric.initModel(); - compactor_electric.initModel(); - fabricator_electric.initModel(); - - paint_filler_hopper.initModel(); - - registerBlockModel(tar_fluid); - registerBlockModel(paint_white_fluid); - registerBlockModel(paint_yellow_fluid); - registerBlockModel(paint_red_fluid); - - kerb_standard.initModel(); - - street_block_a.initModel(); - street_block_b.initModel(); - generic_blocks.initModel(); - - tactile_crossing_bumps.initModel(); - manhole_cover_round.initModel(); - manhole_cover_square.initModel(); - drain_cover_1.initModel(); - drain_cover_2.initModel(); - road_snow.initModel(); - } - - @SideOnly(Side.CLIENT) - public static void registerBlockModel(Block block) { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(block), 0, new ModelResourceLocation(block.getRegistryName(), "inventory")); - } - - //We only register white variants. Others can be taken from the white. - public static void registerPaintGunEntries() { - System.out.println("#############################"); - System.out.println("#############################"); - System.out.println("#############################"); - System.out.println("Registering paint gun entries. Will check " + paintBlockList.size() + " entries."); - System.out.println("#############################"); - System.out.println("#############################"); - System.out.println("#############################"); - int count = 0; - for (int i = 0; i < paintBlockList.size(); i++) { - PaintBlockBase block = paintBlockList.get(i); - - if (block.getUnlocalizedName().contains("white")) { - if (block.getCoreMetas() != null) { - for (int j = 0; j < block.getCoreMetas().length; j++) { - PaintGunItemRegistry.registerPaint(block, block.getCoreMetas()[j], j); - count++; - } - } - } - } - - for (int i = 0; i < DynamicBlockRegistry.customPaints.size(); i++) { - PaintBlockBase block = DynamicBlockRegistry.customPaints.get(i); - - if (block.getUnlocalizedName().contains("white")) { - for (int j = 0; j < block.getCoreMetas().length; j++) { - PaintGunItemRegistry.registerPaint(block, block.getCoreMetas()[j], j); - count++; - } - count++; - } - } - - FurenikusRoads.logger.info("REGISTRATION COMPLETE! " + count + "Paints registered"); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/NonPaintRoadTopBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/NonPaintRoadTopBlock.java deleted file mode 100644 index b9cf511b..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/NonPaintRoadTopBlock.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.silvaniastudios.roads.blocks; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.decorative.CurbBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.IBlockState; -import net.minecraft.util.BlockRenderLayer; -import net.minecraft.util.EnumBlockRenderType; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; - -public class NonPaintRoadTopBlock extends BlockBase { - - public NonPaintRoadTopBlock(String name) { - super(name, Material.ROCK); - this.setHardness(1.0F); - this.setCreativeTab(FurenikusRoads.tab_road_parts); - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @Override - public EnumBlockRenderType getRenderType(IBlockState state) { - return EnumBlockRenderType.MODEL; - } - - @Override - public BlockRenderLayer getBlockLayer() { - return BlockRenderLayer.CUTOUT; - } - - @Deprecated - @Override - public boolean isBlockNormalCube(IBlockState state) { - return false; - } - - @Override - public boolean isNormalCube(IBlockState state, IBlockAccess world, BlockPos pos) { - return false; - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - return BlockFaceShape.UNDEFINED; - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(worldIn, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(worldIn, pos)+0.0625, 1.0D); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState blockState, IBlockAccess worldIn, BlockPos pos) { - return new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(worldIn, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(worldIn, pos)+0.0625, 1.0D); - } - - @Override - public Block.EnumOffsetType getOffsetType() - { - return Block.EnumOffsetType.XYZ; - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - double offset = 1.0 - getBlockBelowHeight(worldIn, pos); - return new Vec3d(0, -offset, 0); - } - - @SuppressWarnings("deprecation") - public double getBlockBelowHeight(IBlockAccess worldIn, BlockPos pos) { - IBlockState underState = worldIn.getBlockState(pos.offset(EnumFacing.DOWN)); - Block underBlock = underState.getBlock(); - double extraOffset = 0.0; - - if (underBlock instanceof PaintBlockBase || underBlock instanceof NonPaintRoadTopBlock || underBlock instanceof CurbBlock) { - extraOffset = 0.062; - } - - return underBlock.getBoundingBox(underState, worldIn, pos.offset(EnumFacing.DOWN)).maxY - extraOffset; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/PaintColour.java b/src/main/java/com/silvaniastudios/roads/blocks/PaintColour.java deleted file mode 100644 index 9f60cf27..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/PaintColour.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.silvaniastudios.roads.blocks; - -import net.minecraft.util.text.TextFormatting; - -public class PaintColour { - - private String name; - private int colour; - private int id; - private TextFormatting formatting; - - /** - * - * @param name The name used on internal textures etc - * @param col The colour, as an int; java.awt.Color.X.getRGB() - * @param id The ID. Must be unique. - * @param formatting Minecraft TextFormatting string, applied before display names - */ - public PaintColour(String name, int col, int id, TextFormatting formatting) { - this.name = name; - this.colour = col; - this.id = id; - this.formatting = formatting; - } - - public String getName() { - return name; - } - - public int getColourInt() { - return colour; - } - - public int getId() { - return id; - } - - public static PaintColour getFromName(String name) { - for (int i = 0; i < FRBlocks.col.size(); i++) { - if (FRBlocks.col.get(i).name.equalsIgnoreCase(name)) { - return FRBlocks.col.get(i); - } - } - return FRBlocks.col.get(0); - } - - public TextFormatting getFormat() { - return formatting; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/RoadBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/RoadBlock.java deleted file mode 100644 index 40311d42..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/RoadBlock.java +++ /dev/null @@ -1,211 +0,0 @@ -package com.silvaniastudios.roads.blocks; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.items.FRItems; -import com.silvaniastudios.roads.items.RoadItemBase; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockSnow; -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class RoadBlock extends BlockBase { - - public static final PropertyEnum ENUM_HEIGHT = PropertyEnum.create("road_block", EnumMeta.class); - - public static final AxisAlignedBB ROAD_1_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.0625D, 1.0D); - public static final AxisAlignedBB ROAD_2_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.125D, 1.0D); - public static final AxisAlignedBB ROAD_3_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.1875D, 1.0D); - public static final AxisAlignedBB ROAD_4_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.25D, 1.0D); - public static final AxisAlignedBB ROAD_5_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.3125D, 1.0D); - public static final AxisAlignedBB ROAD_6_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.375D, 1.0D); - public static final AxisAlignedBB ROAD_7_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.4375D, 1.0D); - public static final AxisAlignedBB ROAD_8_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.5D, 1.0D); - public static final AxisAlignedBB ROAD_9_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.5625D, 1.0D); - public static final AxisAlignedBB ROAD_10_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.625D, 1.0D); - public static final AxisAlignedBB ROAD_11_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.6875D, 1.0D); - public static final AxisAlignedBB ROAD_12_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.75D, 1.0D); - public static final AxisAlignedBB ROAD_13_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.8125D, 1.0D); - public static final AxisAlignedBB ROAD_14_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.875D, 1.0D); - public static final AxisAlignedBB ROAD_15_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.9375D, 1.0D); - public static final AxisAlignedBB ROAD_16_16_AABB = new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 1.0D, 1.0D); - - private RoadItemBase fragmentItem; - - public RoadBlock(String name, Material mat, RoadItemBase fragment) { - super(name, mat); - setDefaultState(this.blockState.getBaseState().withProperty(ENUM_HEIGHT, EnumMeta.id0)); - this.setCreativeTab(FurenikusRoads.tab_roads); - this.fragmentItem = fragment; - this.setHarvestLevel("pneumatic_drill", 0); - this.setHardness(1.0F); - } - - public RoadItemBase getFragmentItem() { - return this.fragmentItem; - } - - @Override - public void neighborChanged(IBlockState state, World worldIn, BlockPos pos, Block blockIn, BlockPos fromPos) { - IBlockState stateAbove = worldIn.getBlockState(pos.offset(EnumFacing.UP)); - - if (stateAbove.getBlock() instanceof BlockSnow && !(stateAbove.getBlock() instanceof BlockRoadSnow)) { - if (RoadsConfig.general.snowOnRoads) { - worldIn.setBlockState(pos.offset(EnumFacing.UP), FRBlocks.road_snow.getDefaultState(), 3); - } else { - worldIn.setBlockToAir(pos.offset(EnumFacing.UP)); - } - } - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs tab, NonNullList items) { - for (EnumMeta height : EnumMeta.values()) { - items.add(new ItemStack(this, 1, height.getMetadata())); - } - } - - @Override - public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - Item item = player.getHeldItem(hand).getItem(); - - if (item.equals(FRItems.paint_scraper)) { - IBlockState stateAbove = world.getBlockState(pos.offset(EnumFacing.UP)); - if (stateAbove.getBlock() instanceof PaintBlockBase) { - world.setBlockToAir(pos.offset(EnumFacing.UP)); - return true; - } - } - return super.onBlockActivated(world, pos, state, player, hand, facing, hitX, hitY, hitZ); - } - - @Override - public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, EntityPlayer player) { - return new ItemStack(state.getBlock(), 1, this.getMetaFromState(state)); - } - - @Override - public int damageDropped(IBlockState state) { - return this.getMetaFromState(state); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {ENUM_HEIGHT}); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(ENUM_HEIGHT, EnumMeta.byMetadata(meta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumMeta)state.getValue(ENUM_HEIGHT)).getMetadata(); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { - return getBoxFromState(state); - } - - @Override - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBoxFromState(state); - } - - public AxisAlignedBB getBoxFromState(IBlockState state) { - int meta = getMetaFromState(state); - if (meta == 0) { return ROAD_1_16_AABB; } - if (meta == 1) { return ROAD_2_16_AABB; } - if (meta == 2) { return ROAD_3_16_AABB; } - if (meta == 3) { return ROAD_4_16_AABB; } - if (meta == 4) { return ROAD_5_16_AABB; } - if (meta == 5) { return ROAD_6_16_AABB; } - if (meta == 6) { return ROAD_7_16_AABB; } - if (meta == 7) { return ROAD_8_16_AABB; } - if (meta == 8) { return ROAD_9_16_AABB; } - if (meta == 9) { return ROAD_10_16_AABB; } - if (meta == 10) { return ROAD_11_16_AABB; } - if (meta == 11) { return ROAD_12_16_AABB; } - if (meta == 12) { return ROAD_13_16_AABB; } - if (meta == 13) { return ROAD_14_16_AABB; } - if (meta == 14) { return ROAD_15_16_AABB; } - if (meta == 15) { return ROAD_16_16_AABB; } - return ROAD_12_16_AABB; - } - - @Override - public boolean isFullCube(IBlockState state) { - return this.getMetaFromState(state) == 15; - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return this.getMetaFromState(state) == 15; - } - - //Checks on full-size blocks - public boolean shouldSideBeRendered(IBlockState state, IBlockAccess world, BlockPos pos, EnumFacing face) { - return checkSideRendering(state, world, pos, face); - } - - //Checks on non-full-size blocks - public boolean doesSideBlockRendering(IBlockState state, IBlockAccess world, BlockPos pos, EnumFacing face) { - return checkSideRendering(state, world, pos, face); - } - - private boolean checkSideRendering(IBlockState state, IBlockAccess world, BlockPos pos, EnumFacing face) { - IBlockState offsetState = world.getBlockState(pos.offset(face)); - - if (face == EnumFacing.UP) { - return true; //Road blocks should always be surface blocks. Other mods are messing with things, so just always render the top face. - } - - if (face == EnumFacing.DOWN && offsetState.getBlock() instanceof RoadBlock && offsetState.getBlock().getMetaFromState(offsetState) < 15) { - return true; - } - - if (offsetState.getBlock() instanceof RoadBlock && offsetState.getBlock().getMetaFromState(offsetState) >= this.getMetaFromState(state)) { - return false; - } - - if (offsetState.getBlockFaceShape(world, pos.offset(face), face.getOpposite()) == BlockFaceShape.SOLID) { - return false; - } - - return true; - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - if (this.getMetaFromState(state) < 15 && face != EnumFacing.DOWN && face != EnumFacing.UP) { - return BlockFaceShape.UNDEFINED; - } - - return BlockFaceShape.SOLID; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/StreetBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/StreetBlock.java deleted file mode 100644 index effb6d63..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/StreetBlock.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.silvaniastudios.roads.blocks; - -import com.silvaniastudios.roads.blocks.enums.EnumMeta; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; -import com.silvaniastudios.roads.items.FRItems; - -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.ItemStack; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class StreetBlock extends BlockBase implements IMetaBlockName { - - public static final PropertyEnum META_ID = PropertyEnum.create("street_block", EnumMeta.class); - int max_meta = 0; - - public StreetBlock(String name, int max_meta) { - super(name, Material.ROCK); - this.setHardness(2.0F); - this.max_meta = max_meta; - setDefaultState(this.blockState.getBaseState().withProperty(META_ID, EnumMeta.id0)); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - @Override - public void getDrops(NonNullList drops, IBlockAccess world, BlockPos pos, IBlockState state, int fortune) { - int meta = getMetaFromState(state); - - if (this == FRBlocks.generic_blocks && meta == 3) { - drops.add(new ItemStack(FRItems.limestone_dust, 4)); - } else { - super.getDrops(drops, world, pos, state, fortune); - } - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs creativeTabs, NonNullList list) { - for (int meta = 0; meta < max_meta; ++meta) { - list.add(new ItemStack(this, 1, meta)); - } - } - - @Override - public int damageDropped(IBlockState state) { - return this.getMetaFromState(state); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {META_ID}); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumMeta)state.getValue(META_ID)).getMetadata(); - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/StreetRoadBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/StreetRoadBlock.java deleted file mode 100644 index 917f674c..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/StreetRoadBlock.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.silvaniastudios.roads.blocks; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.items.RoadItemBase; - -import net.minecraft.block.material.Material; - -public class StreetRoadBlock extends RoadBlock { - - public StreetRoadBlock(String name, Material mat, RoadItemBase fragment) { - super(name, mat, fragment); - this.setCreativeTab(FurenikusRoads.tab_sidewalks); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierBlock.java deleted file mode 100644 index b3f2b80b..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierBlock.java +++ /dev/null @@ -1,220 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.BlockBase; -import com.silvaniastudios.roads.blocks.NonPaintRoadTopBlock; -import com.silvaniastudios.roads.blocks.enums.IConnectable; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.items.FRItems; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -public class BarrierBlock extends BlockBase implements IConnectable { - - public static final PropertyBool NORTH = PropertyBool.create("north"); - public static final PropertyBool EAST = PropertyBool.create("east"); - public static final PropertyBool SOUTH = PropertyBool.create("south"); - public static final PropertyBool WEST = PropertyBool.create("west"); - public static final PropertyBool DEFAULTS = PropertyBool.create("zz_default_stuff"); - public static final PropertyEnum POSTS = PropertyEnum.create("post", BarrierBlock.EnumPost.class); - - public BarrierBlock(String name) { - super(name, Material.IRON); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(NORTH, true) - .withProperty(EAST, false) - .withProperty(SOUTH, true) - .withProperty(WEST, false) - .withProperty(DEFAULTS, true) - .withProperty(POSTS, EnumPost.NONE)); - this.setCreativeTab(FurenikusRoads.tab_road_parts); - this.setHardness(1.5F); - this.setHarvestLevel("pickaxe", 1); - } - - @SuppressWarnings("deprecation") - public boolean canConnectTo(IBlockAccess worldIn, BlockPos pos, boolean checkingLevel) { - IBlockState state = worldIn.getBlockState(pos); - Block block = state.getBlock(); - if (checkingLevel) { - if (block instanceof IConnectable || block.isOpaqueCube(state)) { - return true; - } - } - - return block instanceof IConnectable; - } - - private boolean canBarrierConnectTo(IBlockAccess world, BlockPos pos, EnumFacing facing) { - BlockPos offset = pos.offset(facing); - return canConnectTo(world, offset, true) || canConnectTo(world, offset.offset(EnumFacing.DOWN), false) || canConnectTo(world, offset.offset(EnumFacing.UP), false); - } - - @Override - public boolean onBlockActivated(World worldIn, BlockPos pos, IBlockState state, EntityPlayer playerIn, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - if (playerIn.getHeldItem(hand).getItem() == FRItems.wrench) { - if (getMetaFromState(state) == 1) { - worldIn.setBlockState(pos, state.withProperty(BarrierBlock.POSTS, BarrierBlock.EnumPost.NONE)); - } else { - worldIn.setBlockState(pos, state.withProperty(BarrierBlock.POSTS, BarrierBlock.EnumPost.NS)); - } - return true; - } - return false; - } - - private EnumPost postDirection(IBlockAccess world, BlockPos pos, int meta) { - if (meta == 1) { - boolean north = canBarrierConnectTo(world, pos, EnumFacing.NORTH); - boolean east = canBarrierConnectTo(world, pos, EnumFacing.EAST); - boolean south = canBarrierConnectTo(world, pos, EnumFacing.SOUTH); - boolean west = canBarrierConnectTo(world, pos, EnumFacing.WEST); - - if (north && east && south && west) { return EnumPost.NONE; } - if (!north && !south && east && west) { return EnumPost.NS; } - if ( north && !south && east && west) { return EnumPost.NS; } - if (!north && south && east && west) { return EnumPost.NS; } - - return EnumPost.EW; - } - return EnumPost.NONE; - } - - public int getMetaFromState(IBlockState state) { - if (state.getValue(POSTS).equals(BarrierBlock.EnumPost.NS) || state.getValue(POSTS).equals(BarrierBlock.EnumPost.EW)) { - return 1; - } - return 0; - } - - public IBlockState getStateFromMeta(int meta) { - if (meta == 1) { - return this.getDefaultState().withProperty(POSTS, EnumPost.NS); - } - return this.getDefaultState(); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {NORTH, EAST, WEST, SOUTH, DEFAULTS, POSTS}); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state.withProperty(NORTH, canBarrierConnectTo(worldIn, pos, EnumFacing.NORTH)) - .withProperty(EAST, canBarrierConnectTo(worldIn, pos, EnumFacing.EAST)) - .withProperty(SOUTH, canBarrierConnectTo(worldIn, pos, EnumFacing.SOUTH)) - .withProperty(WEST, canBarrierConnectTo(worldIn, pos, EnumFacing.WEST)) - .withProperty(POSTS, postDirection(worldIn, pos, getMetaFromState(state))); - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBox(state, world, pos); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBox(state, world, pos); - } - - private AxisAlignedBB getBox(IBlockState state, IBlockAccess world, BlockPos pos) { - boolean north = canBarrierConnectTo(world, pos, EnumFacing.NORTH); - boolean east = canBarrierConnectTo(world, pos, EnumFacing.EAST); - boolean south = canBarrierConnectTo(world, pos, EnumFacing.SOUTH); - boolean west = canBarrierConnectTo(world, pos, EnumFacing.WEST); - - double collisionBoxHeight = RoadsConfig.general.barriersLikeFences ? 1.5 : 1.0; - - double xLow = 0.0; - double zLow = 0.0; - double xHigh = collisionBoxHeight; - double zHigh = collisionBoxHeight; - - if (north) { zLow = 0.0; } else { zLow = (1.0/16.0)*5.375; } - if (east) { xHigh = 1.0; } else { xHigh = collisionBoxHeight-((1.0/16.0)*5.375); } - if (south) { zHigh = 1.0; } else { zHigh = collisionBoxHeight-((1.0/16.0)*5.375); } - if (west) { xLow = 0.0; } else { xLow = (1.0/16.0)*5.375; } - return new AxisAlignedBB(xLow, -1+getBlockBelowHeight(world, pos), zLow, xHigh, -1+getBlockBelowHeight(world, pos)+1.0, zHigh); - } - - @Override - public Block.EnumOffsetType getOffsetType() - { - return Block.EnumOffsetType.XYZ; - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - double offset = 1.0 - getBlockBelowHeight(worldIn, pos); - return new Vec3d(0, -offset, 0); - } - - @SuppressWarnings("deprecation") - public double getBlockBelowHeight(IBlockAccess worldIn, BlockPos pos) { - IBlockState underState = worldIn.getBlockState(pos.offset(EnumFacing.DOWN)); - Block underBlock = underState.getBlock(); - double extraOffset = 0.0; - - if (underBlock instanceof PaintBlockBase || underBlock instanceof NonPaintRoadTopBlock || underBlock instanceof CurbBlock) { - extraOffset = 0.062; - } - - return underBlock.getBoundingBox(underState, worldIn, pos.offset(EnumFacing.DOWN)).maxY - extraOffset; - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - return BlockFaceShape.UNDEFINED; - } - - public static enum EnumPost implements IStringSerializable { - NS("north_south"), - EW("east_west"), - NONE("none"); - - private final String name; - - private EnumPost(String name) { - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public static EnumPost byId(int id) { - if (id == 0) { return EnumPost.NS; } - if (id == 1) { return EnumPost.EW; } - return EnumPost.NONE; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierConcreteEdgeBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierConcreteEdgeBlock.java deleted file mode 100644 index 2a977718..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierConcreteEdgeBlock.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; - -public class BarrierConcreteEdgeBlock extends BarrierEdgeBlock { - - public BarrierConcreteEdgeBlock(String name) { - super(name, false); - } - - @Override - public void setBoxes(IBlockAccess world, BlockPos pos) { - SOUTH_AABB = new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.5D, 1.0D, -1+getBlockBelowHeight(world, pos)+1.0D, 1.0D); - WEST_AABB = new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.0D, 0.5D, -1+getBlockBelowHeight(world, pos)+1.0D, 1.0D); - NORTH_AABB = new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(world, pos)+1.0D, 0.5D); - EAST_AABB = new AxisAlignedBB(0.5D, -1+getBlockBelowHeight(world, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(world, pos)+1.0D, 1.0D); - FULL_AABB = new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(world, pos)+1.0D, 1.0D); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierEdgeBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierEdgeBlock.java deleted file mode 100644 index 7891f0ec..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierEdgeBlock.java +++ /dev/null @@ -1,499 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import java.util.List; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.BlockBase; -import com.silvaniastudios.roads.blocks.NonPaintRoadTopBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.items.FRItems; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.util.BlockRenderLayer; -import net.minecraft.util.EnumBlockRenderType; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class BarrierEdgeBlock extends BlockBase { - - public static final PropertyEnum ROTATION = PropertyEnum.create("rotation", EnumBarrierRotation.class); - public static final PropertyEnum LEFT = PropertyEnum.create("left", EnumBarrierSide.class); - public static final PropertyEnum RIGHT = PropertyEnum.create("right", EnumBarrierSide.class); - public static final PropertyBool POSTS = PropertyBool.create("zpost"); - - boolean double_sided; - - AxisAlignedBB SOUTH_AABB = FULL_BLOCK_AABB; - AxisAlignedBB WEST_AABB = FULL_BLOCK_AABB; - AxisAlignedBB NORTH_AABB = FULL_BLOCK_AABB; - AxisAlignedBB EAST_AABB = FULL_BLOCK_AABB; - AxisAlignedBB FULL_AABB = FULL_BLOCK_AABB; - - public BarrierEdgeBlock(String name, boolean double_sided) { - super(name, Material.IRON); - this.double_sided = double_sided; - this.setCreativeTab(FurenikusRoads.tab_road_parts); - this.setHardness(2.0F); - this.setDefaultState(this.blockState.getBaseState().withProperty(ROTATION, EnumBarrierRotation.NORTH) - .withProperty(LEFT, EnumBarrierSide.NORMAL) - .withProperty(RIGHT, EnumBarrierSide.NORMAL) - .withProperty(POSTS, false)); - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @Override - public boolean onBlockActivated(World worldIn, BlockPos pos, IBlockState state, EntityPlayer playerIn, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - if (playerIn.getHeldItem(hand).getItem() == FRItems.wrench) { - if (getMetaFromState(state) > 3) { - worldIn.setBlockState(pos, state.withProperty(POSTS, false)); - } else { - worldIn.setBlockState(pos, state.withProperty(POSTS, true)); - } - return true; - } - return false; - } - - @SuppressWarnings("deprecation") - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - int rot = 0; - if (placer.getHorizontalFacing().equals(EnumFacing.EAST)) { rot = 1; } - if (placer.getHorizontalFacing().equals(EnumFacing.SOUTH)) { rot = 2; } - if (placer.getHorizontalFacing().equals(EnumFacing.WEST)) { rot = 3; } - - return getStateForPlacement(world, pos, facing, hitX, hitY, hitZ, meta+rot, placer); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - boolean post = false; - if (meta > 3) { - post = true; - meta -= 4; - } - return this.getDefaultState().withProperty(ROTATION, EnumBarrierRotation.byMetadata(meta)).withProperty(POSTS, post); - } - - @Override - public int getMetaFromState(IBlockState state) { - EnumBarrierRotation rot = state.getValue(ROTATION); - int post = state.getValue(POSTS) ? 4 : 0; - return rot.getMetadata() + post; - } - - @Override - public EnumBlockRenderType getRenderType(IBlockState state) { - return EnumBlockRenderType.MODEL; - } - - @Override - public BlockRenderLayer getBlockLayer() { - return BlockRenderLayer.CUTOUT; - } - - private EnumBarrierSide canBarrierConnectTo(IBlockState state, IBlockAccess world, BlockPos pos, boolean checkingLeft) { - EnumBarrierRotation thisRot = state.getValue(ROTATION); - - EnumFacing up = EnumFacing.NORTH; - EnumFacing left = EnumFacing.WEST; - EnumFacing right = EnumFacing.EAST; - EnumFacing down = EnumFacing.SOUTH; - - EnumBarrierRotation wrLeft = EnumBarrierRotation.WEST; - EnumBarrierRotation wrRight = EnumBarrierRotation.EAST; - - if (thisRot.equals(EnumBarrierRotation.NORTH)) { - up = EnumFacing.NORTH; - left = EnumFacing.WEST; - right = EnumFacing.EAST; - down = EnumFacing.SOUTH; - - wrLeft = EnumBarrierRotation.WEST; - wrRight = EnumBarrierRotation.EAST; - } - - if (thisRot.equals(EnumBarrierRotation.EAST)) { - up = EnumFacing.EAST; - left = EnumFacing.NORTH; - right = EnumFacing.SOUTH; - down = EnumFacing.WEST; - - wrLeft = EnumBarrierRotation.NORTH; - wrRight = EnumBarrierRotation.SOUTH; - } - - if (thisRot.equals(EnumBarrierRotation.SOUTH)) { - up = EnumFacing.SOUTH; - left = EnumFacing.EAST; - right = EnumFacing.WEST; - down = EnumFacing.NORTH; - - wrLeft = EnumBarrierRotation.EAST; - wrRight = EnumBarrierRotation.WEST; - } - - if (thisRot.equals(EnumBarrierRotation.WEST)) { - up = EnumFacing.WEST; - left = EnumFacing.SOUTH; - right = EnumFacing.NORTH; - down = EnumFacing.EAST; - - wrLeft = EnumBarrierRotation.SOUTH; - wrRight = EnumBarrierRotation.NORTH; - } - - IBlockState stateUp = world.getBlockState(pos.offset(up)); - IBlockState stateLeft = world.getBlockState(pos.offset(left)); - IBlockState stateRight = world.getBlockState(pos.offset(right)); - IBlockState stateDown = world.getBlockState(pos.offset(down)); - - boolean upBlock = stateUp.getBlock() instanceof BarrierEdgeBlock; - boolean leftBlock = stateLeft.getBlock() instanceof BarrierEdgeBlock; - boolean rightBlock = stateRight.getBlock() instanceof BarrierEdgeBlock; - boolean downBlock = stateDown.getBlock() instanceof BarrierEdgeBlock; - - if (upBlock && leftBlock) { - if (stateUp.getValue(ROTATION).equals(wrLeft) && stateLeft.getValue(ROTATION).equals(thisRot)) { - if (checkingLeft) { - return EnumBarrierSide.CORNER; - } else { - return EnumBarrierSide.NONE; - } - } - } - - if (upBlock && rightBlock) { - if (stateUp.getValue(ROTATION).equals(wrRight) && stateRight.getValue(ROTATION).equals(thisRot)) { - if (checkingLeft) { - return EnumBarrierSide.NONE; - } else { - return EnumBarrierSide.CORNER; - } - } - } - - if (downBlock && !leftBlock && !upBlock && checkingLeft) { - if (stateDown.getValue(ROTATION).equals(wrLeft)) { - return EnumBarrierSide.DOWN; - } - } - - if (downBlock && !rightBlock && !upBlock && !checkingLeft) { - if (stateDown.getValue(ROTATION).equals(wrRight)) { - return EnumBarrierSide.DOWN; - } - } - - return EnumBarrierSide.NORMAL; - } - - @Override - public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - EnumBarrierSide left = canBarrierConnectTo(state, world, pos, true); - EnumBarrierSide right = canBarrierConnectTo(state, world, pos, false); - - return state.withProperty(LEFT, left).withProperty(RIGHT, right); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, ROTATION, LEFT, RIGHT, POSTS); - } - - public void setBoxes(IBlockAccess world, BlockPos pos) { - SOUTH_AABB = new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.875D, 1.0D, -1+getBlockBelowHeight(world, pos)+1.25D, 1.0D); - WEST_AABB = new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.0D, 0.125D, -1+getBlockBelowHeight(world, pos)+1.25D, 1.0D); - NORTH_AABB = new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(world, pos)+1.25D, 0.125D); - EAST_AABB = new AxisAlignedBB(0.875D, -1+getBlockBelowHeight(world, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(world, pos)+1.25D, 1.0D); - FULL_AABB = new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(world, pos)+1.25D, 1.0D); - } - - @Override - public void addCollisionBoxToList(IBlockState state, World world, BlockPos pos, AxisAlignedBB entityBox, List collidingBoxes, @Nullable Entity entityIn, boolean isActualState) { - setBoxes(world, pos); - if (!isActualState) { - state = state.getActualState(world, pos); - } - - int meta = getMetaFromState(state); - - boolean n = (meta == 0 || meta == 4); - boolean e = (meta == 1 || meta == 5); - boolean s = (meta == 2 || meta == 6); - boolean w = (meta == 3 || meta == 7); - - EnumBarrierSide left = state.getValue(LEFT); - EnumBarrierSide right = state.getValue(RIGHT); - - if (double_sided) { - if (n) { - if (left .equals(EnumBarrierSide.DOWN)) { w = true; } - if (right.equals(EnumBarrierSide.DOWN)) { e = true; } - if (!left.equals(EnumBarrierSide.DOWN) && !right.equals(EnumBarrierSide.DOWN)) { - s = true; - } - } else if (e) { - if (left .equals(EnumBarrierSide.DOWN)) { n = true; } - if (right.equals(EnumBarrierSide.DOWN)) { s = true; } - if (!left.equals(EnumBarrierSide.DOWN) && !right.equals(EnumBarrierSide.DOWN)) { - w = true; - } - } else if (s) { - if (left .equals(EnumBarrierSide.DOWN)) { e = true; } - if (right.equals(EnumBarrierSide.DOWN)) { w = true; } - if (!left.equals(EnumBarrierSide.DOWN) && !right.equals(EnumBarrierSide.DOWN)) { - n = true; - } - } else if (w) { - if (left .equals(EnumBarrierSide.DOWN)) { s = true; } - if (right.equals(EnumBarrierSide.DOWN)) { n = true; } - if (!left.equals(EnumBarrierSide.DOWN) && !right.equals(EnumBarrierSide.DOWN)) { - e = true; - } - } - } else { - if (n) { - if (left .equals(EnumBarrierSide.DOWN)) { w = true; } - if (right.equals(EnumBarrierSide.DOWN)) { e = true; } - } else if (e) { - if (left .equals(EnumBarrierSide.DOWN)) { n = true; } - if (right.equals(EnumBarrierSide.DOWN)) { s = true; } - } else if (s) { - if (left .equals(EnumBarrierSide.DOWN)) { e = true; } - if (right.equals(EnumBarrierSide.DOWN)) { w = true; } - } else if (w) { - if (left .equals(EnumBarrierSide.DOWN)) { s = true; } - if (right.equals(EnumBarrierSide.DOWN)) { n = true; } - } - - if (n && (left.equals(EnumBarrierSide.CORNER) || right.equals(EnumBarrierSide.CORNER))) { n = false; } - if (e && (left.equals(EnumBarrierSide.CORNER) || right.equals(EnumBarrierSide.CORNER))) { e = false; } - if (s && (left.equals(EnumBarrierSide.CORNER) || right.equals(EnumBarrierSide.CORNER))) { s = false; } - if (w && (left.equals(EnumBarrierSide.CORNER) || right.equals(EnumBarrierSide.CORNER))) { w = false; } - } - - if (n) { - addCollisionBoxToList(pos, entityBox, collidingBoxes, NORTH_AABB); - } - - if (e) { - addCollisionBoxToList(pos, entityBox, collidingBoxes, EAST_AABB); - } - - if (s) { - addCollisionBoxToList(pos, entityBox, collidingBoxes, SOUTH_AABB); - } - - if (w) { - addCollisionBoxToList(pos, entityBox, collidingBoxes, WEST_AABB); - } - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - setBoxes(world, pos); - int meta = getMetaFromState(state); - - boolean n = (meta == 0 || meta == 4); - boolean e = (meta == 1 || meta == 5); - boolean s = (meta == 2 || meta == 6); - boolean w = (meta == 3 || meta == 7); - - state = state.getActualState(world, pos); - EnumBarrierSide left = state.getValue(LEFT); - EnumBarrierSide right = state.getValue(RIGHT); - - if (double_sided) { return FULL_AABB; } - - if (n && left .equals(EnumBarrierSide.DOWN)) { return FULL_AABB; } - if (n && right.equals(EnumBarrierSide.DOWN)) { return FULL_AABB; } - - if (e && left .equals(EnumBarrierSide.DOWN)) { return FULL_AABB; } - if (e && right.equals(EnumBarrierSide.DOWN)) { return FULL_AABB; } - - if (s && left .equals(EnumBarrierSide.DOWN)) { return FULL_AABB; } - if (s && right.equals(EnumBarrierSide.DOWN)) { return FULL_AABB; } - - if (w && left .equals(EnumBarrierSide.DOWN)) { return FULL_AABB; } - if (w && right.equals(EnumBarrierSide.DOWN)) { return FULL_AABB; } - - if (n && left.equals(EnumBarrierSide.CORNER)) { return new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.0D, 0.125D, -1+getBlockBelowHeight(world, pos)+1.0D, 0.125D); } - if (n && right.equals(EnumBarrierSide.CORNER)) { return new AxisAlignedBB(0.875D, -1+getBlockBelowHeight(world, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(world, pos)+1.0D, 0.125D); } - - if (e && left.equals(EnumBarrierSide.CORNER)) { return new AxisAlignedBB(0.875D, -1+getBlockBelowHeight(world, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(world, pos)+1.0D, 0.125D); } - if (e && right.equals(EnumBarrierSide.CORNER)) { return new AxisAlignedBB(0.875D, -1+getBlockBelowHeight(world, pos), 0.875D, 1.0D, -1+getBlockBelowHeight(world, pos)+1.0D, 1.0D); } - - if (s && left.equals(EnumBarrierSide.CORNER)) { return new AxisAlignedBB(0.875D, -1+getBlockBelowHeight(world, pos), 0.875D, 1.0D, -1+getBlockBelowHeight(world, pos)+1.0D, 1.0D); } - if (s && right.equals(EnumBarrierSide.CORNER)) { return new AxisAlignedBB( 0.0D, -1+getBlockBelowHeight(world, pos), 0.875D, 0.125D, -1+getBlockBelowHeight(world, pos)+1.0D, 1.0D); } - - if (w && left.equals(EnumBarrierSide.CORNER)) { return new AxisAlignedBB( 0.0D, -1+getBlockBelowHeight(world, pos), 0.875D, 0.125D, -1+getBlockBelowHeight(world, pos)+1.0D, 1.0D); } - if (w && right.equals(EnumBarrierSide.CORNER)) { return new AxisAlignedBB( 0.0D, -1+getBlockBelowHeight(world, pos), 0.0D, 0.125D, -1+getBlockBelowHeight(world, pos)+1.0D, 0.125D); } - - if (n) { return NORTH_AABB; } - if (e) { return EAST_AABB; } - if (s) { return SOUTH_AABB; } - if (w) { return WEST_AABB; } - - return FULL_AABB; - } - - - - @Override - public Block.EnumOffsetType getOffsetType() - { - return Block.EnumOffsetType.XYZ; - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - double offset = 1.0 - getBlockBelowHeight(worldIn, pos); - return new Vec3d(0, -offset, 0); - } - - @SuppressWarnings("deprecation") - public double getBlockBelowHeight(IBlockAccess worldIn, BlockPos pos) { - IBlockState underState = worldIn.getBlockState(pos.offset(EnumFacing.DOWN)); - Block underBlock = underState.getBlock(); - double extraOffset = 0.0; - - if (underBlock instanceof PaintBlockBase || underBlock instanceof NonPaintRoadTopBlock || underBlock instanceof CurbBlock) { - extraOffset = 0.062; - } - - return underBlock.getBoundingBox(underState, worldIn, pos.offset(EnumFacing.DOWN)).maxY - extraOffset; - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - } - - - - public enum EnumBarrierSide implements IStringSerializable { - NORMAL(0, "normal"), - DOWN(1, "down"), - CORNER(2, "corner"), - NONE(3, "none"); - - private static final EnumBarrierSide[] META_LOOKUP = new EnumBarrierSide[values().length]; - private final int meta; - private final String name; - - private EnumBarrierSide(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getMetadata() { - return this.meta; - } - - public static EnumBarrierSide byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumBarrierSide type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } - } - - public enum EnumBarrierRotation implements IStringSerializable { - NORTH(0, "north"), - EAST (1, "east"), - SOUTH(2, "south"), - WEST (3, "west"); - - private static final EnumBarrierRotation[] META_LOOKUP = new EnumBarrierRotation[values().length]; - private final int meta; - private final String name; - - private EnumBarrierRotation(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getMetadata() { - return this.meta; - } - - public static EnumBarrierRotation byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumBarrierRotation type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - return BlockFaceShape.UNDEFINED; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierEndBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierEndBlock.java deleted file mode 100644 index be4081f0..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierEndBlock.java +++ /dev/null @@ -1,169 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.BlockBase; -import com.silvaniastudios.roads.blocks.NonPaintRoadTopBlock; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; -import com.silvaniastudios.roads.blocks.enums.IConnectable; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class BarrierEndBlock extends BlockBase implements IConnectable, IMetaBlockName { - - public static final PropertyEnum META_ID = PropertyEnum.create("meta", EnumMeta.class); - - public BarrierEndBlock(String name) { - super(name, Material.IRON); - this.setHardness(2.0F); - setDefaultState(this.blockState.getBaseState().withProperty(META_ID, EnumMeta.id0)); - this.setCreativeTab(FurenikusRoads.tab_road_parts); - this.setHardness(1.5F); - this.setHarvestLevel("pickaxe", 1); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - @SuppressWarnings("deprecation") - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - int rot = 0; - if (placer.getHorizontalFacing() == EnumFacing.EAST) { rot = 1; } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { rot = 2; } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { rot = 3; } - - return super.getStateForPlacement(world, pos, facing, hitX, hitY, hitZ, meta+rot, placer); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs creativeTabs, NonNullList list) { - list.add(new ItemStack(this, 1, 0)); - //list.add(new ItemStack(this, 1, 4)); - //list.add(new ItemStack(this, 1, 8)); - //list.add(new ItemStack(this, 1, 12)); - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @Override - public int damageDropped(IBlockState state) { - int meta = getMetaFromState(state); - if (meta < 4) { return 0; } - if (meta < 8) { return 4; } - if (meta < 12) { return 8; } - if (meta < 16) { return 12; } - return 0; - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {META_ID}); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumMeta)state.getValue(META_ID)).getMetadata(); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBox(state, world, pos); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBox(state, world, pos); - } - - private AxisAlignedBB getBox(IBlockState state, IBlockAccess world, BlockPos pos) { - int meta = getMetaFromState(state); - double p = 1.0/16.0; - if (meta == 0) { return new AxisAlignedBB(p* 5, -1+getBlockBelowHeight(world, pos), 0, p*11, -1+getBlockBelowHeight(world, pos)+1.0, p* 2); } - if (meta == 1) { return new AxisAlignedBB(p*14, -1+getBlockBelowHeight(world, pos), p* 5, 1, -1+getBlockBelowHeight(world, pos)+1.0, p*11); } - if (meta == 2) { return new AxisAlignedBB(p* 5, -1+getBlockBelowHeight(world, pos), p*14, p*11, -1+getBlockBelowHeight(world, pos)+1.0, 1); } - if (meta == 3) { return new AxisAlignedBB(0, -1+getBlockBelowHeight(world, pos), p* 5, p* 2, -1+getBlockBelowHeight(world, pos)+1.0, p*11); } - - return new AxisAlignedBB(0, -1+getBlockBelowHeight(world, pos), 0, 1, -1+getBlockBelowHeight(world, pos)+1.0, 1); - } - - @Override - public Block.EnumOffsetType getOffsetType() - { - return Block.EnumOffsetType.XYZ; - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - double offset = 1.0 - getBlockBelowHeight(worldIn, pos); - return new Vec3d(0, -offset, 0); - } - - @SuppressWarnings("deprecation") - public double getBlockBelowHeight(IBlockAccess worldIn, BlockPos pos) { - IBlockState underState = worldIn.getBlockState(pos.offset(EnumFacing.DOWN)); - Block underBlock = underState.getBlock(); - double extraOffset = 0.0; - - if (underBlock instanceof PaintBlockBase || underBlock instanceof NonPaintRoadTopBlock || underBlock instanceof CurbBlock) { - extraOffset = 0.062; - } - - return underBlock.getBoundingBox(underState, worldIn, pos.offset(EnumFacing.DOWN)).maxY - extraOffset; - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - return BlockFaceShape.UNDEFINED; - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - //ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 4, new ModelResourceLocation(getRegistryName(), "inventory2")); - //ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 8, new ModelResourceLocation(getRegistryName(), "inventory3")); - //ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 12, new ModelResourceLocation(getRegistryName(), "inventory4")); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierLowEdgeBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierLowEdgeBlock.java deleted file mode 100644 index ab18a002..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarrierLowEdgeBlock.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; - -public class BarrierLowEdgeBlock extends BarrierEdgeBlock { - - public BarrierLowEdgeBlock(String name, boolean double_sided) { - super(name, double_sided); - } - - @Override - public void setBoxes(IBlockAccess world, BlockPos pos) { - SOUTH_AABB = new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.5D, 1.0D, -1+getBlockBelowHeight(world, pos)+0.625D, 1.0D); - WEST_AABB = new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.0D, 0.5D, -1+getBlockBelowHeight(world, pos)+0.625D, 1.0D); - NORTH_AABB = new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(world, pos)+0.625D, 0.5D); - EAST_AABB = new AxisAlignedBB(0.5D, -1+getBlockBelowHeight(world, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(world, pos)+0.625D, 1.0D); - FULL_AABB = new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(world, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(world, pos)+0.625D, 1.0D); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarsBarrierBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarsBarrierBlock.java deleted file mode 100644 index 9016dc03..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BarsBarrierBlock.java +++ /dev/null @@ -1,180 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.BlockBase; -import com.silvaniastudios.roads.blocks.NonPaintRoadTopBlock; -import com.silvaniastudios.roads.blocks.enums.IConnectable; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.items.FRItems; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -public class BarsBarrierBlock extends BlockBase implements IConnectable { - - public static final PropertyBool NORTH = PropertyBool.create("north"); - public static final PropertyBool EAST = PropertyBool.create("east"); - public static final PropertyBool SOUTH = PropertyBool.create("south"); - public static final PropertyBool WEST = PropertyBool.create("west"); - public static final PropertyBool POSTS = PropertyBool.create("post"); - - float height; - - public BarsBarrierBlock(String name, float height) { - super(name, Material.IRON); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(NORTH, true) - .withProperty(EAST, false) - .withProperty(SOUTH, true) - .withProperty(WEST, false) - .withProperty(POSTS, false)); - this.setCreativeTab(FurenikusRoads.tab_road_parts); - this.setHardness(1.5F); - this.setHarvestLevel("pickaxe", 1); - this.height = height; - } - - public BarsBarrierBlock(String name) { - this(name, 1.0F); - } - - @SuppressWarnings("deprecation") - public boolean canConnectTo(IBlockAccess worldIn, BlockPos pos, boolean checkingLevel) { - IBlockState state = worldIn.getBlockState(pos); - Block block = state.getBlock(); - if (checkingLevel) { - if (block instanceof IConnectable || block.isOpaqueCube(state)) { - return true; - } - } - - return block instanceof IConnectable; - } - - private boolean canBarrierConnectTo(IBlockAccess world, BlockPos pos, EnumFacing facing) { - BlockPos offset = pos.offset(facing); - return canConnectTo(world, offset, true) || canConnectTo(world, offset.offset(EnumFacing.DOWN), false) || canConnectTo(world, offset.offset(EnumFacing.UP), false); - } - - @Override - public boolean onBlockActivated(World worldIn, BlockPos pos, IBlockState state, EntityPlayer playerIn, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - if (playerIn.getHeldItem(hand).getItem() == FRItems.wrench) { - if (getMetaFromState(state) == 1) { - worldIn.setBlockState(pos, state.withProperty(POSTS, false)); - } else { - worldIn.setBlockState(pos, state.withProperty(POSTS, true)); - } - return true; - } - return false; - } - - public int getMetaFromState(IBlockState state) { - if (state.getValue(POSTS).equals(true)) { - return 1; - } - return 0; - } - - public IBlockState getStateFromMeta(int meta) { - if (meta == 1) { - return this.getDefaultState().withProperty(POSTS, true); - } - return this.getDefaultState(); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {NORTH, EAST, WEST, SOUTH, POSTS}); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state.withProperty(NORTH, canBarrierConnectTo(worldIn, pos, EnumFacing.NORTH)) - .withProperty(EAST, canBarrierConnectTo(worldIn, pos, EnumFacing.EAST)) - .withProperty(SOUTH, canBarrierConnectTo(worldIn, pos, EnumFacing.SOUTH)) - .withProperty(WEST, canBarrierConnectTo(worldIn, pos, EnumFacing.WEST)) - .withProperty(POSTS, getMetaFromState(state) == 1); - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBox(state, world, pos); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBox(state, world, pos); - } - - private AxisAlignedBB getBox(IBlockState state, IBlockAccess world, BlockPos pos) { - boolean north = canBarrierConnectTo(world, pos, EnumFacing.NORTH); - boolean east = canBarrierConnectTo(world, pos, EnumFacing.EAST); - boolean south = canBarrierConnectTo(world, pos, EnumFacing.SOUTH); - boolean west = canBarrierConnectTo(world, pos, EnumFacing.WEST); - - double xLow = 0.0; - double zLow = 0.0; - double xHigh = 1.0; - double zHigh = 1.0; - - if (north) { zLow = 0.0; } else { zLow = (1.0/16.0)*5.375; } - if (east) { xHigh = 1.0; } else { xHigh = 1.0-((1.0/16.0)*5.375); } - if (south) { zHigh = 1.0; } else { zHigh = 1.0-((1.0/16.0)*5.375); } - if (west) { xLow = 0.0; } else { xLow = (1.0/16.0)*5.375; } - return new AxisAlignedBB(xLow, -1+getBlockBelowHeight(world, pos)-(1-height), zLow, xHigh, -1+getBlockBelowHeight(world, pos)+1.25-(1-height), zHigh); - } - - @Override - public Block.EnumOffsetType getOffsetType() - { - return Block.EnumOffsetType.XYZ; - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - double offset = 1.0 - getBlockBelowHeight(worldIn, pos); - return new Vec3d(0, -offset, 0); - } - - @SuppressWarnings("deprecation") - public double getBlockBelowHeight(IBlockAccess worldIn, BlockPos pos) { - IBlockState underState = worldIn.getBlockState(pos.offset(EnumFacing.DOWN)); - Block underBlock = underState.getBlock(); - double extraOffset = 0.0; - - if (underBlock instanceof PaintBlockBase || underBlock instanceof NonPaintRoadTopBlock || underBlock instanceof CurbBlock) { - extraOffset = 0.062; - } - - return underBlock.getBoundingBox(underState, worldIn, pos.offset(EnumFacing.DOWN)).maxY - extraOffset; - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - return BlockFaceShape.UNDEFINED; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BollardBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/BollardBlock.java deleted file mode 100644 index 0871e782..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/BollardBlock.java +++ /dev/null @@ -1,162 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.NonPaintRoadTopBlock; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class BollardBlock extends NonPaintRoadTopBlock implements IMetaBlockName { - - public static final PropertyBool ROTATED = PropertyBool.create("rotated"); - public static final PropertyEnum BOLLARD_TYPE = PropertyEnum.create("type", EnumBollard.class); - - public BollardBlock(String name) { - super(name); - this.setDefaultState(this.blockState.getBaseState().withProperty(ROTATED, false).withProperty(BOLLARD_TYPE, EnumBollard.ID_0)); - this.setHarvestLevel("pickaxe", 1); - this.setLightLevel(12); - } - - @SuppressWarnings("deprecation") - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - int rot = 0; - if (placer.getHorizontalFacing() == EnumFacing.EAST || placer.getHorizontalFacing() == EnumFacing.WEST) { rot = 1; } - return super.getStateForPlacement(world, pos, facing, hitX, hitY, hitZ, meta+rot, placer); - } - - public int getMetaFromState(IBlockState state) { - ((EnumBollard)state.getValue(BOLLARD_TYPE)).getMeta(); - int rot = 0; - if (state.getValue(ROTATED).equals(true)) { - rot = 1; - } - return rot + ((EnumBollard)state.getValue(BOLLARD_TYPE)).getMeta(); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs creativeTabs, NonNullList list) { - list.add(new ItemStack(this, 1, 0)); - list.add(new ItemStack(this, 1, 2)); - list.add(new ItemStack(this, 1, 4)); - list.add(new ItemStack(this, 1, 6)); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return new AxisAlignedBB(0.25, -1+getBlockBelowHeight(worldIn, pos), 0.25, 0.75, -1+getBlockBelowHeight(worldIn, pos)+1, 0.75); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return new AxisAlignedBB(0.25, -1+getBlockBelowHeight(worldIn, pos), 0.25, 0.75, -1+getBlockBelowHeight(worldIn, pos)+1.5, 0.75); - } - - public IBlockState getStateFromMeta(int meta) { - boolean rot = false; - if (meta % 2 == 1) { - rot = true; - meta--; - } - return this.getDefaultState().withProperty(ROTATED, rot).withProperty(BOLLARD_TYPE, EnumBollard.byId(meta/2)); - } - - @Override - public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, EntityPlayer player) { - return new ItemStack(state.getBlock(), 1, getDroppedMeta(state)); - } - - @Override - public int damageDropped(IBlockState state) { - return getDroppedMeta(state); - } - - private int getDroppedMeta(IBlockState state) { - int meta = getMetaFromState(state); - - if (meta % 2 == 1) { return meta - 1; } - return meta; - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {ROTATED, BOLLARD_TYPE}); - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - for (int i = 0; i < 8; i++) { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), i*2, new ModelResourceLocation(getRegistryName(), "inventory_" + i)); - } - } - - public static enum EnumBollard implements IStringSerializable { - ID_0(0, "0"), - ID_1(2, "1"), - ID_2(4, "2"), - ID_3(6, "3"), - ID_4(8, "4"), - ID_5(10,"5"), - ID_6(12,"6"), - ID_7(14,"7"); - - private final String name; - private final int meta; - - private EnumBollard(int meta, String name) { - this.name = name; - this.meta = meta; - } - - public int getMeta() { - return this.meta; - } - - @Override - public String getName() { - return this.name; - } - - public static EnumBollard byId(int id) { - if (id == 1) { return EnumBollard.ID_1; } - if (id == 2) { return EnumBollard.ID_2; } - if (id == 3) { return EnumBollard.ID_3; } - if (id == 4) { return EnumBollard.ID_4; } - if (id == 5) { return EnumBollard.ID_5; } - if (id == 6) { return EnumBollard.ID_6; } - if (id == 7) { return EnumBollard.ID_7; } - return EnumBollard.ID_0; - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/CatsEyeBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/CatsEyeBlock.java deleted file mode 100644 index 6c227243..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/CatsEyeBlock.java +++ /dev/null @@ -1,166 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.NonPaintRoadTopBlock; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.EnumBlockRenderType; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -public class CatsEyeBlock extends NonPaintRoadTopBlock { - - public static final PropertyEnum ENUM_EYE = PropertyEnum.create("eye_type", CatsEyeBlock.EnumCatsEye.class); - boolean dbl = false; - - public CatsEyeBlock(String name, boolean dbl) { - super(name); - this.dbl = dbl; - this.setDefaultState(this.blockState.getBaseState().withProperty(ENUM_EYE, CatsEyeBlock.EnumCatsEye.floor_ns)); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - if (facing == EnumFacing.UP) { - if (placer.getHorizontalFacing() == EnumFacing.EAST || placer.getHorizontalFacing() == EnumFacing.WEST) { - return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlock.EnumCatsEye.floor_ew); - } - return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlock.EnumCatsEye.floor_ns); - } - if (facing == EnumFacing.DOWN) { - if (placer.getHorizontalFacing() == EnumFacing.EAST || placer.getHorizontalFacing() == EnumFacing.WEST) { - return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlock.EnumCatsEye.roof_ew); - } - return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlock.EnumCatsEye.roof_ns); - } - - if (facing == EnumFacing.NORTH) { return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlock.EnumCatsEye.wall_north); } - if (facing == EnumFacing.EAST) { return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlock.EnumCatsEye.wall_east); } - if (facing == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlock.EnumCatsEye.wall_south); } - if (facing == EnumFacing.WEST) { return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlock.EnumCatsEye.wall_west); } - - - return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlock.EnumCatsEye.floor_ns); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {ENUM_EYE}); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlock.EnumCatsEye.byMetadata(meta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((CatsEyeBlock.EnumCatsEye)state.getValue(ENUM_EYE)).getMetadata(); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return getBox(state, worldIn, pos); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState blockState, IBlockAccess worldIn, BlockPos pos) { - return NULL_AABB; - } - - @Override - public EnumBlockRenderType getRenderType(IBlockState iBlockState) { - return EnumBlockRenderType.MODEL; - } - - public AxisAlignedBB getBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - if (dbl) { - if (meta == 0) { return new AxisAlignedBB(0.125, -1+getBlockBelowHeight(worldIn, pos), 0.4375, 0.875, -1+getBlockBelowHeight(worldIn, pos)+0.0625, 0.5625); } - if (meta == 1) { return new AxisAlignedBB(0.4375, -1+getBlockBelowHeight(worldIn, pos), 0.125, 0.5625, -1+getBlockBelowHeight(worldIn, pos)+0.0625, 0.875); } - if (meta == 2) { return new AxisAlignedBB(0.4375, 0.125, 0.9375, 0.5625, 0.875, 1 ); } - if (meta == 3) { return new AxisAlignedBB(0, 0.125, 0.4375, 0.0625, 0.875, 0.5625); } - if (meta == 4) { return new AxisAlignedBB(0.4375, 0.125, 0, 0.5625, 0.875, 0.0625); } - if (meta == 5) { return new AxisAlignedBB(0.9375, 0.125, 0.4375, 1, 0.875, 0.5625); } - if (meta == 6) { return new AxisAlignedBB(0.125, 0.9375, 0.4375, 0.875, 1.0, 0.5625); } - if (meta == 7) { return new AxisAlignedBB(0.4375, 0.9375, 0.125, 0.5625, 1.0, 0.875); } - } - - if (meta == 6 || meta == 7) { - return new AxisAlignedBB(0.4375, 0.9375, 0.4375, 0.5625, 1.0, 0.5625); - } - - if (meta == 2) { return new AxisAlignedBB(0.4375, 0.4375, 0.9375, 0.5625, 0.5625, 1 ); } - if (meta == 3) { return new AxisAlignedBB(0, 0.4375, 0.4375, 0.0625, 0.5625, 0.5625); } - if (meta == 4) { return new AxisAlignedBB(0.4375, 0.4375, 0, 0.5625, 0.5625, 0.0625); } - if (meta == 5) { return new AxisAlignedBB(0.9375, 0.4375, 0.4375, 1, 0.5625, 0.5625); } - - return new AxisAlignedBB(0.4375, -1+getBlockBelowHeight(worldIn, pos), 0.4375, 0.5625, -1+getBlockBelowHeight(worldIn, pos)+0.0625, 0.5625); - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int thisMeta = getMetaFromState(worldIn.getBlockState(pos)); - if (thisMeta == 0 || thisMeta == 1) { - double offset = 1.0 - getBlockBelowHeight(worldIn, pos); - return new Vec3d(0, -offset, 0); - } - return new Vec3d(0, 0, 0); - } - - - public static enum EnumCatsEye implements IStringSerializable { - floor_ns(0, "floor_ns"), - floor_ew(1, "floor_ew"), - wall_north(2, "wall_north"), - wall_east(3, "wall_east"), - wall_south(4, "wall_south"), - wall_west(5, "wall_west"), - roof_ns(6, "roof_ns"), - roof_ew(7, "roof_ew"); - - private static final EnumCatsEye[] META_LOOKUP = new EnumCatsEye[values().length]; - private final int meta; - private final String name; - - private EnumCatsEye(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public int getMetadata() { - return this.meta; - } - - public static EnumCatsEye byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumCatsEye type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/CatsEyeBlockFourWay.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/CatsEyeBlockFourWay.java deleted file mode 100644 index 7b49e6e1..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/CatsEyeBlockFourWay.java +++ /dev/null @@ -1,189 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.NonPaintRoadTopBlock; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.EnumBlockRenderType; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -public class CatsEyeBlockFourWay extends NonPaintRoadTopBlock { - - public static final PropertyEnum ENUM_EYE = PropertyEnum.create("eye_type", CatsEyeBlockFourWay.EnumCatsEye.class); - boolean dbl = false; - - public CatsEyeBlockFourWay(String name, boolean dbl) { - super(name); - this.dbl = dbl; - this.setDefaultState(this.blockState.getBaseState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.floor_n)); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - if (facing == EnumFacing.UP) { - if (placer.getHorizontalFacing() == EnumFacing.NORTH) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.floor_n); - if (placer.getHorizontalFacing() == EnumFacing.EAST) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.floor_e); - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.floor_s); - if (placer.getHorizontalFacing() == EnumFacing.WEST) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.floor_w); - } - if (facing == EnumFacing.DOWN) { - if (placer.getHorizontalFacing() == EnumFacing.NORTH) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.roof_n); - if (placer.getHorizontalFacing() == EnumFacing.EAST) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.roof_e); - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.roof_s); - if (placer.getHorizontalFacing() == EnumFacing.WEST) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.roof_w); - } - - if (facing == EnumFacing.NORTH) { - if (placer.getHorizontalFacing() == EnumFacing.EAST) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.wall_north_gr); - if (placer.getHorizontalFacing() == EnumFacing.WEST) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.wall_north_rg); - return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.wall_north_gr); - } - if (facing == EnumFacing.EAST) { - if (placer.getHorizontalFacing() == EnumFacing.NORTH) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.wall_east_gr); - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.wall_east_rg); - return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.wall_east_gr); - } - if (facing == EnumFacing.SOUTH) { - if (placer.getHorizontalFacing() == EnumFacing.WEST) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.wall_south_gr); - if (placer.getHorizontalFacing() == EnumFacing.EAST) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.wall_south_rg); - return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.wall_south_gr); - } - if (facing == EnumFacing.WEST) { - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.wall_west_gr); - if (placer.getHorizontalFacing() == EnumFacing.NORTH) return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.wall_west_rg); - return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.wall_west_gr); - } - - return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.floor_n); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {ENUM_EYE}); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(ENUM_EYE, CatsEyeBlockFourWay.EnumCatsEye.byMetadata(meta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((CatsEyeBlockFourWay.EnumCatsEye)state.getValue(ENUM_EYE)).getMetadata(); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return getBox(state, worldIn, pos); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState blockState, IBlockAccess worldIn, BlockPos pos) { - return NULL_AABB; - } - - @Override - public EnumBlockRenderType getRenderType(IBlockState iBlockState) { - return EnumBlockRenderType.MODEL; - } - - public AxisAlignedBB getBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - if (dbl) { - if (meta == 0 || meta == 2) { return new AxisAlignedBB(0.125, -1+getBlockBelowHeight(worldIn, pos), 0.4375, 0.875, -1+getBlockBelowHeight(worldIn, pos)+0.0625, 0.5625); } - if (meta == 1 || meta == 3) { return new AxisAlignedBB(0.4375, -1+getBlockBelowHeight(worldIn, pos), 0.125, 0.5625, -1+getBlockBelowHeight(worldIn, pos)+0.0625, 0.875); } - if (meta == 4 || meta == 8) { return new AxisAlignedBB(0.4375, 0.125, 0.9375, 0.5625, 0.875, 1 ); } - if (meta == 5 || meta == 9) { return new AxisAlignedBB(0, 0.125, 0.4375, 0.0625, 0.875, 0.5625); } - if (meta == 6 || meta == 10) { return new AxisAlignedBB(0.4375, 0.125, 0, 0.5625, 0.875, 0.0625); } - if (meta == 7 || meta == 11) { return new AxisAlignedBB(0.9375, 0.125, 0.4375, 1, 0.875, 0.5625); } - if (meta == 12 || meta == 14) { return new AxisAlignedBB(0.125, 0.9375, 0.4375, 0.875, 1.0, 0.5625); } - if (meta == 13 || meta == 15) { return new AxisAlignedBB(0.4375, 0.9375, 0.125, 0.5625, 1.0, 0.875); } - } - - if (meta >= 12) { - return new AxisAlignedBB(0.4375, 0.9375, 0.4375, 0.5625, 1.0, 0.5625); - } - - if (meta == 4 || meta == 8) { return new AxisAlignedBB(0.4375, 0.4375, 0.9375, 0.5625, 0.5625, 1 ); } - if (meta == 5 || meta == 9) { return new AxisAlignedBB(0, 0.4375, 0.4375, 0.0625, 0.5625, 0.5625); } - if (meta == 6 || meta == 10) { return new AxisAlignedBB(0.4375, 0.4375, 0, 0.5625, 0.5625, 0.0625); } - if (meta == 7 || meta == 11) { return new AxisAlignedBB(0.9375, 0.4375, 0.4375, 1, 0.5625, 0.5625); } - - return new AxisAlignedBB(0.4375, -1+getBlockBelowHeight(worldIn, pos), 0.4375, 0.5625, -1+getBlockBelowHeight(worldIn, pos)+0.0625, 0.5625); - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int thisMeta = getMetaFromState(worldIn.getBlockState(pos)); - if (thisMeta <= 3) { - double offset = 1.0 - getBlockBelowHeight(worldIn, pos); - return new Vec3d(0, -offset, 0); - } - return new Vec3d(0, 0, 0); - } - - - public static enum EnumCatsEye implements IStringSerializable { - floor_n(0, "floor_n"), - floor_e(1, "floor_e"), - floor_s(2, "floor_s"), - floor_w(3, "floor_w"), - wall_north_rg(4, "wall_north_rg"), - wall_east_rg (5, "wall_east_rg"), - wall_south_rg(6, "wall_south_rg"), - wall_west_rg (7, "wall_west_rg"), - wall_north_gr(8, "wall_north_gr"), - wall_east_gr (9, "wall_east_gr"), - wall_south_gr(10, "wall_south_gr"), - wall_west_gr (11, "wall_west_gr"), - roof_n(12, "roof_n"), - roof_e(13, "roof_e"), - roof_s(14, "roof_s"), - roof_w(15, "roof_w"); - - private static final EnumCatsEye[] META_LOOKUP = new EnumCatsEye[values().length]; - private final int meta; - private final String name; - - private EnumCatsEye(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public int getMetadata() { - return this.meta; - } - - public static EnumCatsEye byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumCatsEye type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/ConcreteBarrierBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/ConcreteBarrierBlock.java deleted file mode 100644 index 40fbe963..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/ConcreteBarrierBlock.java +++ /dev/null @@ -1,147 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.BlockBase; -import com.silvaniastudios.roads.blocks.NonPaintRoadTopBlock; -import com.silvaniastudios.roads.blocks.enums.IConnectable; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; - -public class ConcreteBarrierBlock extends BlockBase implements IConnectable { - - public static final PropertyBool NORTH = PropertyBool.create("north"); - public static final PropertyBool EAST = PropertyBool.create("east"); - public static final PropertyBool SOUTH = PropertyBool.create("south"); - public static final PropertyBool WEST = PropertyBool.create("west"); - - public ConcreteBarrierBlock(String name) { - super(name, Material.IRON); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(NORTH, true) - .withProperty(EAST, false) - .withProperty(SOUTH, true) - .withProperty(WEST, false)); - this.setCreativeTab(FurenikusRoads.tab_road_parts); - this.setHardness(1.5F); - this.setHarvestLevel("pickaxe", 1); - } - - @SuppressWarnings("deprecation") - public boolean canConnectTo(IBlockAccess worldIn, BlockPos pos, boolean checkingLevel) { - IBlockState state = worldIn.getBlockState(pos); - Block block = state.getBlock(); - if (checkingLevel) { - if (block instanceof IConnectable || block.isOpaqueCube(state)) { - return true; - } - } - - return block instanceof IConnectable; - } - - private boolean canBarrierConnectTo(IBlockAccess world, BlockPos pos, EnumFacing facing) { - BlockPos offset = pos.offset(facing); - return canConnectTo(world, offset, true) || canConnectTo(world, offset.offset(EnumFacing.DOWN), false) || canConnectTo(world, offset.offset(EnumFacing.UP), false); - } - - public int getMetaFromState(IBlockState state) { - return 0; - } - - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState(); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {NORTH, EAST, WEST, SOUTH}); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state.withProperty(NORTH, canBarrierConnectTo(worldIn, pos, EnumFacing.NORTH)) - .withProperty(EAST, canBarrierConnectTo(worldIn, pos, EnumFacing.EAST)) - .withProperty(SOUTH, canBarrierConnectTo(worldIn, pos, EnumFacing.SOUTH)) - .withProperty(WEST, canBarrierConnectTo(worldIn, pos, EnumFacing.WEST)); - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBox(state, world, pos); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBox(state, world, pos); - } - - private AxisAlignedBB getBox(IBlockState state, IBlockAccess world, BlockPos pos) { - boolean north = canBarrierConnectTo(world, pos, EnumFacing.NORTH); - boolean east = canBarrierConnectTo(world, pos, EnumFacing.EAST); - boolean south = canBarrierConnectTo(world, pos, EnumFacing.SOUTH); - boolean west = canBarrierConnectTo(world, pos, EnumFacing.WEST); - - double xLow = 0.0; - double zLow = 0.0; - double xHigh = 1.0; - double zHigh = 1.0; - - if (north) { zLow = 0.0; } else { zLow = (1.0/16.0)*5.375; } - if (east) { xHigh = 1.0; } else { xHigh = 1.0-((1.0/16.0)*5.375); } - if (south) { zHigh = 1.0; } else { zHigh = 1.0-((1.0/16.0)*5.375); } - if (west) { xLow = 0.0; } else { xLow = (1.0/16.0)*5.375; } - return new AxisAlignedBB(xLow, -1+getBlockBelowHeight(world, pos), zLow, xHigh, -1+getBlockBelowHeight(world, pos)+1.0, zHigh); - } - - @Override - public Block.EnumOffsetType getOffsetType() - { - return Block.EnumOffsetType.XYZ; - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - double offset = 1.0 - getBlockBelowHeight(worldIn, pos); - return new Vec3d(0, -offset, 0); - } - - @SuppressWarnings("deprecation") - public double getBlockBelowHeight(IBlockAccess worldIn, BlockPos pos) { - IBlockState underState = worldIn.getBlockState(pos.offset(EnumFacing.DOWN)); - Block underBlock = underState.getBlock(); - double extraOffset = 0.0; - - if (underBlock instanceof PaintBlockBase || underBlock instanceof NonPaintRoadTopBlock || underBlock instanceof CurbBlock) { - extraOffset = 0.062; - } - - return underBlock.getBoundingBox(underState, worldIn, pos.offset(EnumFacing.DOWN)).maxY - extraOffset; - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - return BlockFaceShape.UNDEFINED; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/CurbBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/CurbBlock.java deleted file mode 100644 index 83d498b1..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/CurbBlock.java +++ /dev/null @@ -1,561 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import com.google.common.collect.Lists; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.BlockBase; -import com.silvaniastudios.roads.blocks.BlockFakeLight; -import com.silvaniastudios.roads.blocks.NonPaintRoadTopBlock; -import com.silvaniastudios.roads.blocks.RoadBlock; -import com.silvaniastudios.roads.blocks.diagonal.HalfBlock; -import com.silvaniastudios.roads.blocks.enums.IConnectable; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; -import com.silvaniastudios.roads.blocks.enums.IPostConnectable; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.client.BoundingBoxDraw; -import com.silvaniastudios.roads.items.FRItems; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockAir; -import net.minecraft.block.BlockLiquid; -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyDirection; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Blocks; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.BlockRenderLayer; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fluids.BlockFluidBase; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -import java.util.ArrayList; -import java.util.List; - -public class CurbBlock extends BlockBase implements IMetaBlockName { - - public static final PropertyEnum CONNECT = PropertyEnum.create("connect", EnumConnectSidewalk.class); - public static final PropertyEnum COLOUR = PropertyEnum.create("colour", EnumColourSidewalk.class); - public static final PropertyDirection FACING = PropertyDirection.create("zz_facing", EnumFacing.Plane.HORIZONTAL); - - - public CurbBlock(String name, Material mat) { - super(name, mat); - this.setHardness(2.0F); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(FACING, EnumFacing.NORTH) - .withProperty(CONNECT, EnumConnectSidewalk.NONE) - .withProperty(COLOUR, EnumColourSidewalk.STANDARD)); - this.setCreativeTab(FurenikusRoads.tab_road_parts); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - int facingId = 0; - - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { facingId = 1; } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { facingId = 2; } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { facingId = 3; } - - return this.getStateFromMeta(meta + facingId); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs tab, NonNullList items) { - items.add(new ItemStack(this, 1, 0)); - items.add(new ItemStack(this, 1, 4)); - items.add(new ItemStack(this, 1, 8)); - items.add(new ItemStack(this, 1, 12)); - } - - @Override - public int getMetaFromState(IBlockState state) { - EnumFacing facing = (EnumFacing)state.getValue(FACING); - int rot = 0; - if (facing == EnumFacing.SOUTH) { rot = 1; } - if (facing == EnumFacing.WEST) { rot = 2; } - if (facing == EnumFacing.EAST) { rot = 3; } - - EnumColourSidewalk colour = (EnumColourSidewalk) state.getValue(COLOUR); - int col = 0; - if (colour == EnumColourSidewalk.WHITE) { col = 4; } - if (colour == EnumColourSidewalk.YELLOW) { col = 8; } - if (colour == EnumColourSidewalk.RED) { col = 12; } - - return rot + col; - } - - @Override - public IBlockState getStateFromMeta(int meta) { - if (meta == 0) { return this.getDefaultState().withProperty(FACING, EnumFacing.NORTH).withProperty(COLOUR, EnumColourSidewalk.STANDARD); } - if (meta == 1) { return this.getDefaultState().withProperty(FACING, EnumFacing.SOUTH).withProperty(COLOUR, EnumColourSidewalk.STANDARD); } - if (meta == 2) { return this.getDefaultState().withProperty(FACING, EnumFacing.WEST ).withProperty(COLOUR, EnumColourSidewalk.STANDARD); } - if (meta == 3) { return this.getDefaultState().withProperty(FACING, EnumFacing.EAST ).withProperty(COLOUR, EnumColourSidewalk.STANDARD); } - - if (meta == 4) { return this.getDefaultState().withProperty(FACING, EnumFacing.NORTH).withProperty(COLOUR, EnumColourSidewalk.WHITE); } - if (meta == 5) { return this.getDefaultState().withProperty(FACING, EnumFacing.SOUTH).withProperty(COLOUR, EnumColourSidewalk.WHITE); } - if (meta == 6) { return this.getDefaultState().withProperty(FACING, EnumFacing.WEST ).withProperty(COLOUR, EnumColourSidewalk.WHITE); } - if (meta == 7) { return this.getDefaultState().withProperty(FACING, EnumFacing.EAST ).withProperty(COLOUR, EnumColourSidewalk.WHITE); } - - if (meta == 8) { return this.getDefaultState().withProperty(FACING, EnumFacing.NORTH).withProperty(COLOUR, EnumColourSidewalk.YELLOW); } - if (meta == 9) { return this.getDefaultState().withProperty(FACING, EnumFacing.SOUTH).withProperty(COLOUR, EnumColourSidewalk.YELLOW); } - if (meta == 10) { return this.getDefaultState().withProperty(FACING, EnumFacing.WEST ).withProperty(COLOUR, EnumColourSidewalk.YELLOW); } - if (meta == 11) { return this.getDefaultState().withProperty(FACING, EnumFacing.EAST ).withProperty(COLOUR, EnumColourSidewalk.YELLOW); } - - if (meta == 12) { return this.getDefaultState().withProperty(FACING, EnumFacing.NORTH).withProperty(COLOUR, EnumColourSidewalk.RED); } - if (meta == 13) { return this.getDefaultState().withProperty(FACING, EnumFacing.SOUTH).withProperty(COLOUR, EnumColourSidewalk.RED); } - if (meta == 14) { return this.getDefaultState().withProperty(FACING, EnumFacing.WEST ).withProperty(COLOUR, EnumColourSidewalk.RED); } - if (meta == 15) { return this.getDefaultState().withProperty(FACING, EnumFacing.EAST ).withProperty(COLOUR, EnumColourSidewalk.RED); } - - return this.getDefaultState().withProperty(FACING, EnumFacing.NORTH).withProperty(COLOUR, EnumColourSidewalk.STANDARD); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {FACING, CONNECT, COLOUR}); - } - - - private EnumConnectSidewalk canLineConnectTo(IBlockAccess world, BlockPos pos, boolean leftSide) { - IBlockState state = world.getBlockState(pos); - int meta = getMetaFromState(state); - - BlockPos posNorth = pos.offset(EnumFacing.NORTH); - BlockPos posEast = pos.offset(EnumFacing.EAST); - BlockPos posSouth = pos.offset(EnumFacing.SOUTH); - BlockPos posWest = pos.offset(EnumFacing.WEST); - - boolean blockNorth = (world.getBlockState(posNorth).getBlock() instanceof CurbBlock); - boolean blockEast = (world.getBlockState(posEast) .getBlock() instanceof CurbBlock); - boolean blockSouth = (world.getBlockState(posSouth).getBlock() instanceof CurbBlock); - boolean blockWest = (world.getBlockState(posWest) .getBlock() instanceof CurbBlock); - - boolean blockNorthWest = (world.getBlockState(posNorth.offset(EnumFacing.WEST)).getBlock() instanceof CurbBlock); - boolean blockNorthEast = (world.getBlockState(posNorth.offset(EnumFacing.EAST)).getBlock() instanceof CurbBlock); - boolean blockSouthWest = (world.getBlockState(posSouth.offset(EnumFacing.WEST)).getBlock() instanceof CurbBlock); - boolean blockSouthEast = (world.getBlockState(posSouth.offset(EnumFacing.EAST)).getBlock() instanceof CurbBlock); - - //north - if (meta == 0 || meta == 4 || meta == 8 || meta == 12) { - if (blockSouth) { - int metaOffset = getMetaFromState(world.getBlockState(posSouth)); - if (metaOffset == 3 || metaOffset == 7 || metaOffset == 11 || metaOffset == 15) { - return EnumConnectSidewalk.RIGHT; - } - if (metaOffset == 2 || metaOffset == 6 || metaOffset == 10 || metaOffset == 14) { - return EnumConnectSidewalk.LEFT; - } - } - if (blockSouthWest) { - int metaOffset = getMetaFromState(world.getBlockState(posSouth.offset(EnumFacing.WEST))); - if (metaOffset == meta) { return EnumConnectSidewalk.LEFT_B; } - } - if (blockSouthEast) { - int metaOffset = getMetaFromState(world.getBlockState(posSouth.offset(EnumFacing.EAST))); - if (metaOffset == meta) { return EnumConnectSidewalk.RIGHT_B; } - } - } - - //east - if (meta == 3 || meta == 7 || meta == 11 || meta == 15) { - if (blockWest) { - int metaOffset = getMetaFromState(world.getBlockState(posWest)); - if (metaOffset == 0 || metaOffset == 4 || metaOffset == 8 || metaOffset == 12) { - return EnumConnectSidewalk.LEFT; - } - if (metaOffset == 1 || metaOffset == 5 || metaOffset == 9 || metaOffset == 13) { - return EnumConnectSidewalk.RIGHT; - } - } - if (blockNorthWest) { - int metaOffset = getMetaFromState(world.getBlockState(posNorth.offset(EnumFacing.WEST))); - if (metaOffset == meta) { return EnumConnectSidewalk.LEFT_B; } - } - if (blockSouthWest) { - int metaOffset = getMetaFromState(world.getBlockState(posSouth.offset(EnumFacing.WEST))); - if (metaOffset == meta) { return EnumConnectSidewalk.RIGHT_B; } - } - } - - //south - if (meta == 1 || meta == 5 || meta == 9 || meta == 13) { - if (blockNorth) { - int metaOffset = getMetaFromState(world.getBlockState(posNorth)); - if (metaOffset == 3 || metaOffset == 7 || metaOffset == 11 || metaOffset == 15) { - return EnumConnectSidewalk.LEFT; - } - if (metaOffset == 2 || metaOffset == 6 || metaOffset == 10 || metaOffset == 14) { - return EnumConnectSidewalk.RIGHT; - } - } - if (blockNorthEast) { - int metaOffset = getMetaFromState(world.getBlockState(posNorth.offset(EnumFacing.EAST))); - if (metaOffset == meta) { return EnumConnectSidewalk.LEFT_B; } - } - if (blockNorthWest) { - int metaOffset = getMetaFromState(world.getBlockState(posNorth.offset(EnumFacing.WEST))); - if (metaOffset == meta) { return EnumConnectSidewalk.RIGHT_B; } - } - } - - //west - if (meta == 2 || meta == 6 || meta == 10 || meta == 14) { - if (blockEast) { - int metaOffset = getMetaFromState(world.getBlockState(posEast)); - if (metaOffset == 0 || metaOffset == 4 || metaOffset == 8 || metaOffset == 12) { - return EnumConnectSidewalk.RIGHT; - } - if (metaOffset == 1 || metaOffset == 5 || metaOffset == 9 || metaOffset == 13) { - return EnumConnectSidewalk.LEFT; - } - } - if (blockSouthEast) { - int metaOffset = getMetaFromState(world.getBlockState(posSouth.offset(EnumFacing.EAST))); - if (metaOffset == meta) { return EnumConnectSidewalk.LEFT_B; } - } - if (blockNorthEast) { - int metaOffset = getMetaFromState(world.getBlockState(posNorth.offset(EnumFacing.EAST))); - if (metaOffset == meta) { return EnumConnectSidewalk.RIGHT_B; } - } - } - - return EnumConnectSidewalk.NONE; - } - - @Override - public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - Item item = player.getHeldItem(hand).getItem(); - - if (item.equals(FRItems.pneumatic_drill) && player.isSneaking()) { - world.setBlockToAir(pos); - return true; - } - return true; - } - - @Override - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state.withProperty(CONNECT, canLineConnectTo(worldIn, pos, true)); - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory1")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 4, new ModelResourceLocation(getRegistryName(), "inventory2")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 8, new ModelResourceLocation(getRegistryName(), "inventory3")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 12, new ModelResourceLocation(getRegistryName(), "inventory4")); - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @SideOnly(Side.CLIENT) - public BlockRenderLayer getBlockLayer() { - return BlockRenderLayer.CUTOUT; - } - - @Deprecated - @Override - public boolean isBlockNormalCube(IBlockState state) { - return false; - } - - @Override - public boolean isNormalCube(IBlockState state, IBlockAccess world, BlockPos pos) { - return false; - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - return BlockFaceShape.UNDEFINED; - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { - return new AxisAlignedBB(0.0D, 0.0D - findBelowBlock(source, pos), 0.0D, 1.0D, 0.125D - findBelowBlock(source, pos), 1.0D); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState blockState, IBlockAccess worldIn, BlockPos pos) { - return NULL_AABB; - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - @Override - public void neighborChanged(IBlockState state, World world, BlockPos pos, Block blockIn, BlockPos fromPos) { - if (world.getBlockState(pos.offset(EnumFacing.DOWN)).getBlock() instanceof BlockAir) { - if (RoadsConfig.general.breakPaintOnBlockBreak) { - world.setBlockToAir(pos); - } - } - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - double offsetY = 1.0 - getBlockConnectedHeight(state, worldIn, pos); - return new Vec3d(0, -offsetY+0.75, 0); - } - - @Override - public RayTraceResult collisionRayTrace(IBlockState blockState, World worldIn, BlockPos pos, Vec3d start, Vec3d end) { - List list = Lists.newArrayList(); - - for (AxisAlignedBB axisalignedbb : getBoxList(pos, worldIn, blockState)) { - list.add(this.rayTrace(pos, start, end, axisalignedbb)); - } - - RayTraceResult raytraceresult1 = null; - double d1 = 0.0D; - - for (RayTraceResult raytraceresult : list) { - if (raytraceresult != null) { - double d0 = raytraceresult.hitVec.squareDistanceTo(end); - - if (d0 > d1) { - raytraceresult1 = raytraceresult; - d1 = d0; - } - } - } - - return raytraceresult1; - } - - public ArrayList getBoxList(BlockPos pos, World world, IBlockState state) { - ArrayList list = new ArrayList<>(); - double y = getBlockConnectedHeight(state,world, pos); - EnumFacing dir = state.getValue(FACING); - switch (dir) { - case NORTH: - list.add(new AxisAlignedBB(0.0,y-0.25625,-0.25,1.0,y,0.0)); - break; - case EAST: - list.add(new AxisAlignedBB(1.0,y-0.25625,0.0,1.25,y,1.0)); - break; - case SOUTH: - list.add(new AxisAlignedBB(0.0,y-0.25625,1.0,1.0,y,1.25)); - break; - case WEST: - list.add(new AxisAlignedBB(-0.25,y-0.25625,0.0,0.0, y,1.0)); - break; - } - - return list; - } - - public Vec3d[] getVecs(World world, IBlockState state, BlockPos pos) { - Vec3d vecs[] = new Vec3d[16]; - EnumFacing facing = state.getValue(FACING); - - double height = getBlockConnectedHeight(state,world, pos); - - double g = 0.0320000000949949026D; //The amount a vanilla drawn box is bigger than the actual collision box - - vecs[0] = new Vec3d(0-g, height-0.25f-g,-0.25-g); - vecs[1] = new Vec3d(1+g, height-0.25f-g,-0.25-g); - vecs[2] = new Vec3d(1+g, height-0.25f-g,0.0+g); - vecs[3] = new Vec3d(0-g, height-0.25f-g,0.0+g); - - vecs[4] = new Vec3d(0-g, height-0.25f-g,-0.25-g); - - vecs[5] = new Vec3d(0-g, height+g, -0.25-g); - vecs[6] = new Vec3d(1+g, height+g, -0.25-g); - vecs[7] = new Vec3d(1+g, height+g, 0.0+g); - vecs[8] = new Vec3d(0-g, height+g, 0.0+g); - - vecs[9] = new Vec3d(0-g, height+g, -0.25-g); - - vecs[10] = new Vec3d(0-g, height+g, 0.0+g); - - vecs[11] = new Vec3d(0-g, height-0.25f-g, 0.0+g); - vecs[12] = new Vec3d(1+g, height-0.25f-g, 0.0+g); - - vecs[13] = new Vec3d(1+g, height+g, 0.0+g); - vecs[14] = new Vec3d(1+g, height+g, -0.25-g); - vecs[15] = new Vec3d(1+g, height-0.25f-g, -0.25-g); - - if (facing.equals(EnumFacing.EAST)) { - vecs = BoundingBoxDraw.getRotatedVecs(vecs, 270, new Vec3d(2,0,0)); - } - - if (facing.equals(EnumFacing.SOUTH)) { - vecs = BoundingBoxDraw.getRotatedVecs(vecs, 180, new Vec3d(2,0,2)); - } - - if (facing.equals(EnumFacing.WEST)) { - vecs = BoundingBoxDraw.getRotatedVecs(vecs, 90, new Vec3d(0,0,2)); - } - - return vecs; - } - - @SuppressWarnings("deprecation") - private double getBlockConnectedHeight(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - EnumFacing checkDir = state.getValue(FACING); - - BlockPos downOffset = pos.offset(EnumFacing.DOWN); - IBlockState downState = worldIn.getBlockState(downOffset); - int countDown = 0; - //while block below is paint or air, keep searching - while ((downState.getBlock() instanceof PaintBlockBase || downState.getBlock() == Blocks.AIR) && countDown < 2) { - downOffset = downOffset.offset(EnumFacing.DOWN); - downState = worldIn.getBlockState(downOffset); - countDown++; - } - if (downState.getBlock() instanceof BlockBase || downState.getBlock().getBlockFaceShape(worldIn, downState, downOffset, EnumFacing.UP).equals(BlockFaceShape.SOLID)) { - BlockPos sideOffset = downOffset.offset(checkDir); - IBlockState endBlock = worldIn.getBlockState(sideOffset); - if (endBlock.getBlock() != Blocks.AIR) { - IBlockState endState = worldIn.getBlockState(sideOffset.offset(EnumFacing.UP)); - if (endState.getBlock() instanceof RoadBlock) { - return endState.getBoundingBox(worldIn, sideOffset.offset(EnumFacing.UP)).maxY-countDown; - } - return endBlock.getBoundingBox(worldIn, sideOffset).maxY-countDown-1; - } - } - - return downState.getBoundingBox(worldIn, downOffset).maxY-countDown-1; - } - - private double findBelowBlock(IBlockAccess worldIn, BlockPos pos) { - BlockPos downOffset = pos.offset(EnumFacing.DOWN); - IBlockState downState = worldIn.getBlockState(downOffset); - int countDown = 0; - - while ((downState.getBlock() instanceof PaintBlockBase || downState.getBlock() == Blocks.AIR) && countDown < 2) { - downOffset = downOffset.offset(EnumFacing.DOWN); - downState = worldIn.getBlockState(downOffset); - countDown++; - } - - return (1.0 - downState.getBoundingBox(worldIn, downOffset).maxY) + countDown + 1; - } - - - - - public static enum EnumConnectSidewalk implements IStringSerializable { - NONE(0, "none"), - LEFT(1, "left"), - RIGHT(2, "right"), - LEFT_B(3, "left_b"), - RIGHT_B(4, "right_b"); - - private static final EnumConnectSidewalk[] META_LOOKUP = new EnumConnectSidewalk[values().length]; - private final int meta; - private final String name; - - private EnumConnectSidewalk(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getMetadata() { - return this.meta; - } - - public static EnumConnectSidewalk byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumConnectSidewalk type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } - } - - public static enum EnumColourSidewalk implements IStringSerializable { - STANDARD(0, "standard"), - WHITE(1, "white"), - YELLOW(2, "yellow"), - RED(3, "red"); - - - private static final EnumColourSidewalk[] META_LOOKUP = new EnumColourSidewalk[values().length]; - private final int meta; - private final String name; - - private EnumColourSidewalk(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getMetadata() { - return this.meta; - } - - public static EnumColourSidewalk byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumColourSidewalk type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/FoldingBollardBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/FoldingBollardBlock.java deleted file mode 100644 index 97a86ed5..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/FoldingBollardBlock.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.enums.EnumMeta; - -import net.minecraft.block.Block; -import net.minecraft.block.state.IBlockState; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class FoldingBollardBlock extends GenericDecorativeBlock { - - public FoldingBollardBlock(String name) { - super(name); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs tab, NonNullList items) { - items.add(new ItemStack(this, 1, 0)); - items.add(new ItemStack(this, 1, 8)); - } - - @SuppressWarnings("deprecation") - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - int rot = 0; - if (placer.getHorizontalFacing() == EnumFacing.EAST) { rot = 1; } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { rot = 2; } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { rot = 3; } - return super.getStateForPlacement(world, pos, facing, hitX, hitY, hitZ, meta+rot, placer); - } - - @Override - public void neighborChanged(IBlockState state, World world, BlockPos pos, Block blockIn, BlockPos fromPos) { - int meta = getMetaFromState(state); - if (world.isBlockPowered(pos) && (meta < 4 || (meta > 7 && meta < 12))) { - world.setBlockState(pos, getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta+4))); - } else if (!world.isBlockPowered(pos) && ((meta > 3 && meta < 8)|| meta > 11)) { - world.setBlockState(pos, getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta-4))); - } - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - return getBox(meta, getBlockBelowHeight(worldIn, pos)); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - return getBox(meta, getBlockBelowHeight(worldIn, pos)); - } - float v = 1.0F/16.0F; - - public AxisAlignedBB getBox(int meta, double belowHeight) { - if (meta == 0 || meta == 1 || meta == 2 || meta == 3) { - return new AxisAlignedBB(6*v, -1+belowHeight, 6*v, 10*v, -1+belowHeight+1, 10*v); - } - - if (meta == 4) { return new AxisAlignedBB(6*v, -1+belowHeight, 6*v, 10*v, -1+belowHeight+(2*v), 25*v); } - if (meta == 5) { return new AxisAlignedBB(-9*v, -1+belowHeight, 6*v, 10*v, -1+belowHeight+(2*v), 10*v); } - if (meta == 6) { return new AxisAlignedBB(6*v, -1+belowHeight, -9*v, 10*v, -1+belowHeight+(2*v), 10*v); } - if (meta == 7) { return new AxisAlignedBB(6*v, -1+belowHeight, 6*v, 25*v, -1+belowHeight+(2*v), 10*v); } - - if (meta == 8 || meta == 10) { return new AxisAlignedBB(6*v, -1+belowHeight, 7*v, 10*v, -1+belowHeight+1, 9*v); } - if (meta == 9 || meta == 11) { return new AxisAlignedBB(7*v, -1+belowHeight, 6*v, 9*v, -1+belowHeight+1, 10*v); } - - if (meta == 12) { return new AxisAlignedBB(6*v, -1+belowHeight, 6*v, 10*v, -1+belowHeight+(2*v), 25*v); } - if (meta == 13) { return new AxisAlignedBB(-9*v, -1+belowHeight, 6*v, 10*v, -1+belowHeight+(2*v), 10*v); } - if (meta == 14) { return new AxisAlignedBB(6*v, -1+belowHeight, -9*v, 10*v, -1+belowHeight+(2*v), 10*v); } - if (meta == 15) { return new AxisAlignedBB(6*v, -1+belowHeight, 6*v, 25*v, -1+belowHeight+(2*v), 10*v); } - - return FULL_BLOCK_AABB; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/FourWayRotDecorativeBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/FourWayRotDecorativeBlock.java deleted file mode 100644 index e8710f40..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/FourWayRotDecorativeBlock.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class FourWayRotDecorativeBlock extends GenericDecorativeBlock { - - public FourWayRotDecorativeBlock(String name) { - super(name); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs tab, NonNullList items) { - items.add(new ItemStack(this, 1, 0)); - items.add(new ItemStack(this, 1, 4)); - items.add(new ItemStack(this, 1, 8)); - items.add(new ItemStack(this, 1, 12)); - } - - @SuppressWarnings("deprecation") - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - int rot = 0; - if (placer.getHorizontalFacing() == EnumFacing.EAST) { rot = 1; } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { rot = 2; } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { rot = 3; } - return super.getStateForPlacement(world, pos, facing, hitX, hitY, hitZ, meta+rot, placer); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/GenericDecorativeBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/GenericDecorativeBlock.java deleted file mode 100644 index 07f16b07..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/GenericDecorativeBlock.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import com.silvaniastudios.roads.blocks.NonPaintRoadTopBlock; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class GenericDecorativeBlock extends NonPaintRoadTopBlock implements IMetaBlockName { - - public static final PropertyEnum META_ID = PropertyEnum.create("meta", EnumMeta.class); - - public GenericDecorativeBlock(String name) { - super(name); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {META_ID}); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumMeta)state.getValue(META_ID)).getMetadata(); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs tab, NonNullList items) { - for (int i = 0; i < EnumMeta.values().length; i++) { - items.add(new ItemStack(this, 1, i)); - } - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - return BlockFaceShape.UNDEFINED; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/MetalPost.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/MetalPost.java deleted file mode 100644 index 3783f8fc..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/MetalPost.java +++ /dev/null @@ -1,170 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.BlockBase; -import com.silvaniastudios.roads.blocks.enums.IPostConnectable; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.init.Blocks; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; - -public class MetalPost extends BlockBase implements IPostConnectable { - - public static final PropertyBool NORTH = PropertyBool.create("north"); - public static final PropertyBool EAST = PropertyBool.create("east"); - public static final PropertyBool SOUTH = PropertyBool.create("south"); - public static final PropertyBool WEST = PropertyBool.create("west"); - public static final PropertyBool UP = PropertyBool.create("up"); - public static final PropertyBool DOWN = PropertyBool.create("down"); - - boolean horizontal = false; - double thickness = 0; - - public MetalPost(String name, boolean horizontal, double thickness) { - super(name, Material.IRON); - this.horizontal = horizontal; - this.thickness = thickness; - this.setCreativeTab(FurenikusRoads.tab_road_parts); - this.setHardness(2.0F); - setDefaultState(); - this.useNeighborBrightness = true; - } - - public void setDefaultState() { - this.setDefaultState(this.blockState.getBaseState() - .withProperty(NORTH, false) - .withProperty(EAST, false) - .withProperty(SOUTH, false) - .withProperty(WEST, false) - .withProperty(UP, false) - .withProperty(DOWN, false)); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state.withProperty(NORTH, canPostConnectTo(worldIn, pos, EnumFacing.NORTH)) - .withProperty(EAST, canPostConnectTo(worldIn, pos, EnumFacing.EAST)) - .withProperty(SOUTH, canPostConnectTo(worldIn, pos, EnumFacing.SOUTH)) - .withProperty(WEST, canPostConnectTo(worldIn, pos, EnumFacing.WEST)) - .withProperty(UP, canPostConnectTo(worldIn, pos, EnumFacing.UP)) - .withProperty(DOWN, getBlockBelowOffset(worldIn, pos)); - } - - @SuppressWarnings("deprecation") - public boolean canConnectTo(IBlockAccess worldIn, BlockPos pos, EnumFacing facing) { - IBlockState state = worldIn.getBlockState(pos); - Block block = state.getBlock(); - if (facing == EnumFacing.DOWN && !block.equals(Blocks.AIR)) { - return true; - } - - if (this.horizontal && block.getBlockFaceShape(worldIn, state, pos, facing.getOpposite()) == BlockFaceShape.SOLID || block instanceof MetalPost || block instanceof StreetLight) { - return true; - } - if (block instanceof MetalPost || block instanceof StreetLight) { - MetalPost post = (MetalPost) block; - return post.horizontal; - } - return false; - } - - private boolean canPostConnectTo(IBlockAccess world, BlockPos pos, EnumFacing facing) { - BlockPos offset = pos.offset(facing); - return canConnectTo(world, offset, facing.getOpposite()); - } - - @SuppressWarnings("deprecation") - public boolean getBlockBelowOffset(IBlockAccess worldIn, BlockPos pos) { - IBlockState underState = worldIn.getBlockState(pos.offset(EnumFacing.DOWN)); - Block underBlock = underState.getBlock(); - return underBlock.getBoundingBox(underState, worldIn, pos.offset(EnumFacing.DOWN)).maxY != 1.0; - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {NORTH, EAST, SOUTH, WEST, UP, DOWN}); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState(); - } - - @Override - public int getMetaFromState(IBlockState state) { - return 0; - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBoxFromState(state, world, pos); - } - - @Override - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBoxFromState(state, world, pos); - } - - public AxisAlignedBB getBoxFromState(IBlockState state, IBlockAccess world, BlockPos pos) { - double widthOffset = thickness / 2; - - boolean north = canPostConnectTo(world, pos, EnumFacing.NORTH); - boolean east = canPostConnectTo(world, pos, EnumFacing.EAST); - boolean south = canPostConnectTo(world, pos, EnumFacing.SOUTH); - boolean west = canPostConnectTo(world, pos, EnumFacing.WEST); - boolean up = canPostConnectTo(world, pos, EnumFacing.UP); - - double xLow = 0; - double yLow = 0; - double zLow = 0; - double xHigh = 1; - double yHigh = 1; - double zHigh = 1; - - if (north) { zLow = 0; } else { zLow = 0.5 - widthOffset; } - if (east) { xHigh = 1; } else { xHigh = 0.5 + widthOffset; } - if (south) { zHigh = 1; } else { zHigh = 0.5 + widthOffset; } - if (west) { xLow = 0; } else { xLow = 0.5 - widthOffset; } - - if (horizontal) { - yLow = 0.5 - widthOffset; - yHigh = 0.5 + widthOffset; - } else { - if ((north || east || south || west) && !up) { - yHigh = 0.5 + widthOffset; - } - if ((!north && !east && !south && !west) || up) { - yHigh = 1; - } - } - - if (getBlockBelowOffset(world, pos)) { - yLow = -0.935; - } - - return new AxisAlignedBB(xLow, yLow, zLow, xHigh, yHigh, zHigh); - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - return BlockFaceShape.UNDEFINED; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/RetractableBollardBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/RetractableBollardBlock.java deleted file mode 100644 index 7ff4f538..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/RetractableBollardBlock.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.enums.EnumMeta; - -import net.minecraft.block.Block; -import net.minecraft.block.state.IBlockState; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class RetractableBollardBlock extends GenericDecorativeBlock { - - public RetractableBollardBlock(String name) { - super(name); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs tab, NonNullList items) { - for (int i = 0; i < EnumMeta.values().length; i++) { - if (i % 2 == 0) { - items.add(new ItemStack(this, 1, i)); - } - } - } - - @Override - public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, EntityPlayer player) { - return new ItemStack(state.getBlock(), 1, getDroppedMeta(state)); - } - - @Override - public int damageDropped(IBlockState state) { - return getDroppedMeta(state); - } - - private int getDroppedMeta(IBlockState state) { - int meta = getMetaFromState(state); - - if (meta % 2 == 1) { return meta - 1; } - return meta; - } - - @Override - public void neighborChanged(IBlockState state, World world, BlockPos pos, Block blockIn, BlockPos fromPos) { - int meta = getMetaFromState(state); - if (world.isBlockPowered(pos) && (meta % 2 == 0)) { - world.setBlockState(pos, getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta+1))); - } else if (!world.isBlockPowered(pos) && (meta % 2 != 0)) { - world.setBlockState(pos, getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta-1))); - } - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - return new AxisAlignedBB(0.5-(getWidth(meta)/2), -1+getBlockBelowHeight(worldIn, pos), 0.5-(getWidth(meta)/2), 0.5+(getWidth(meta)/2), -1+getBlockBelowHeight(worldIn, pos)+getHeight(meta), 0.5+(getWidth(meta)/2)); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - return new AxisAlignedBB(0.5-(getWidth(meta)/2), -1+getBlockBelowHeight(worldIn, pos), 0.5-(getWidth(meta)/2), 0.5+(getWidth(meta)/2), -1+getBlockBelowHeight(worldIn, pos)+getCollisionHeight(meta), 0.5+(getWidth(meta)/2)); - } - float v = 1.0F/16.0F; - - private double getWidth(int meta) { - if (meta < 8) { return 8*v; } - return 5*v; - } - - private double getHeight(int meta) { - if (meta == 0 || meta == 2) { return 12*v; } - if (meta == 4 || meta == 6) { return 1.0D; } - if (meta == 8 || meta == 10 || meta == 12 || meta == 14) { return 1.0D; } - return meta < 8 ? 0.5*v : 1*v; - } - - private double getCollisionHeight(int meta) { - if (meta == 0 || meta == 2 || meta == 4 || meta == 6 || meta == 8 || meta == 10 || meta == 12 || meta == 14) { return 1.5; } - return meta < 8 ? 0.5*v : 1*v; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/SpeedBumpBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/SpeedBumpBlock.java deleted file mode 100644 index bf26e01e..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/SpeedBumpBlock.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -public class SpeedBumpBlock extends TwoWayRotDecorativeBlock { - - public static final PropertyBool LEFT = PropertyBool.create("left"); - public static final PropertyBool RIGHT = PropertyBool.create("right"); - - public SpeedBumpBlock(String name) { - super(name); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {META_ID, LEFT, RIGHT}); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - EnumFacing left = EnumFacing.NORTH; - EnumFacing right = EnumFacing.SOUTH; - if (getMetaFromState(state) % 2 == 0) { - left = EnumFacing.WEST; - right = EnumFacing.EAST; - } - - - return state.withProperty(LEFT, connect(worldIn, pos, left)) - .withProperty(RIGHT, connect(worldIn, pos, right)); - } - - public boolean connect(IBlockAccess world, BlockPos pos, EnumFacing dir) { - return world.getBlockState(pos.offset(dir)).getBlock() instanceof SpeedBumpBlock; - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - return getBox(meta, getBlockBelowHeight(worldIn, pos)); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - return getBox(meta, getBlockBelowHeight(worldIn, pos)); - } - - - public AxisAlignedBB getBox(int meta, double belowHeight) { - float v = 1.0F/16.0F; - if (meta % 2 == 0) { - return new AxisAlignedBB(0*v, -1+belowHeight, 4*v, 16*v, -1+belowHeight+(3*v), 12*v); - } - return new AxisAlignedBB(4*v, -1+belowHeight, 0*v, 12*v, -1+belowHeight+(3*v), 16*v); - } - - @Override - public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, EntityPlayer player) { - return new ItemStack(state.getBlock(), 1, getDroppedMeta(state)); - } - - @Override - public int damageDropped(IBlockState state) { - return getDroppedMeta(state); - } - - private int getDroppedMeta(IBlockState state) { - int meta = getMetaFromState(state); - - if (meta % 2 == 1) { return meta - 1; } - return meta; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/StandardBollardBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/StandardBollardBlock.java deleted file mode 100644 index 88a975c6..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/StandardBollardBlock.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -public class StandardBollardBlock extends GenericDecorativeBlock { - - public StandardBollardBlock(String name) { - super(name); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - return new AxisAlignedBB(0.5-(getWidth(meta)/2), -1+getBlockBelowHeight(worldIn, pos), 0.5-(getWidth(meta)/2), 0.5+(getWidth(meta)/2), -1+getBlockBelowHeight(worldIn, pos)+getHeight(meta), 0.5+(getWidth(meta)/2)); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - return new AxisAlignedBB(0.5-(getWidth(meta)/2), -1+getBlockBelowHeight(worldIn, pos), 0.5-(getWidth(meta)/2), 0.5+(getWidth(meta)/2), -1+getBlockBelowHeight(worldIn, pos)+1.5, 0.5+(getWidth(meta)/2)); - } - - float v = 1.0F/16.0F; - - private double getWidth(int meta) { - if (meta == 0 || meta == 1 || meta == 10 || meta == 11 || meta == 14 || meta == 15) { return 4*v; } - if (meta == 2 || meta == 3 || meta == 4 || meta == 5 || meta == 12 || meta == 13) { return 3.5*v; } - if (meta == 6 || meta == 7 || meta == 8 || meta == 9) { return 2*v; } - return 1.0D; - } - - private double getHeight(int meta) { - if (meta == 0 || meta == 1 || meta == 14 || meta == 15) { return 1.0D; } - if (meta == 12 || meta == 13) { return 18*v; } - return 14.5*v; - } - - @Override - public int getLightValue(IBlockState state) { - if (getMetaFromState(state) == 12 || getMetaFromState(state) == 13) { - return 15; - } - return this.lightValue; - } - - @Override - public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, EntityPlayer player) { - return new ItemStack(state.getBlock(), 1, getDroppedMeta(state)); - } - - @Override - public int damageDropped(IBlockState state) { - return getDroppedMeta(state); - } - - private int getDroppedMeta(IBlockState state) { - int meta = getMetaFromState(state); - return meta; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/StreetLight.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/StreetLight.java deleted file mode 100644 index eff20fb9..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/StreetLight.java +++ /dev/null @@ -1,153 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.enums.EnumSimpleRotation; - -import net.minecraft.block.Block; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.init.Blocks; -import net.minecraft.item.ItemStack; -import net.minecraft.util.BlockRenderLayer; -import net.minecraft.util.EnumBlockRenderType; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -public class StreetLight extends MetalPost { - - public static final PropertyEnum ROTATION = PropertyEnum.create("rotation", EnumSimpleRotation.class); - - private double length; - private double width; - private double height; - - public StreetLight(String name, double length, double width, double height) { - super(name, true, 0.0); - this.setLightLevel(1.0F); - this.length = length; - this.width = width; - this.height = height; - } - - @Override - public void setDefaultState() { - this.setDefaultState(this.blockState.getBaseState().withProperty(ROTATION, EnumSimpleRotation.NORTH)); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - //First try and place it against whatever we're placing it against - if (facing == EnumFacing.NORTH) { return this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.NORTH); } - if (facing == EnumFacing.EAST) { return this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.EAST); } - if (facing == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.SOUTH); } - if (facing == EnumFacing.WEST) { return this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.WEST); } - //If that fails, just place it opposite us - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.SOUTH); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.WEST); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.NORTH); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.EAST); } - - return this.getDefaultState(); - } - - public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack) { - placeLightBlockBelow(world, pos, placer); - } - - public void breakBlock(World worldIn, BlockPos pos, IBlockState state) { - destroyLightBlockBelow(worldIn, pos); - super.breakBlock(worldIn, pos, state); - } - - @SuppressWarnings("deprecation") - public void placeLightBlockBelow(World world, BlockPos pos, EntityLivingBase placer) { - BlockPos posOffset = pos.offset(EnumFacing.DOWN); - Block block = world.getBlockState(posOffset).getBlock(); - - int count = 0; - - while (block == Blocks.AIR && count < 15) { - posOffset = posOffset.offset(EnumFacing.DOWN); - block = world.getBlockState(posOffset).getBlock(); - count++; - if (block != Blocks.AIR) { - Block targetBlock = world.getBlockState(posOffset.offset(EnumFacing.UP)).getBlock(); - if (targetBlock == Blocks.AIR) { - world.setBlockState(posOffset.offset(EnumFacing.UP), FRBlocks.fake_light_source.getStateForPlacement(world, posOffset, EnumFacing.UP, 0, 0, 0, 0, placer), 3); - } - } - } - } - - @Override - public EnumBlockRenderType getRenderType(IBlockState state) { - return EnumBlockRenderType.MODEL; - } - - @Override - public BlockRenderLayer getBlockLayer() { - return BlockRenderLayer.CUTOUT; - } - - public void destroyLightBlockBelow(World world, BlockPos pos) { - BlockPos posOffset = pos.offset(EnumFacing.DOWN); - Block block = world.getBlockState(posOffset).getBlock(); - - int count = 0; - - while (block != FRBlocks.fake_light_source && count < 15) { - posOffset = posOffset.offset(EnumFacing.DOWN); - block = world.getBlockState(posOffset).getBlock(); - count++; - if (block == FRBlocks.fake_light_source) { - world.setBlockToAir(posOffset); - } - } - } - - @Override - public AxisAlignedBB getBoxFromState(IBlockState state, IBlockAccess world, BlockPos pos) { - int meta = getMetaFromState(state); - - double v = 1.0/16.0; - - if (meta == 0) { return new AxisAlignedBB((8-(width/2))*v, 7*v, 16*v-(length*v), (8+(width/2))*v, (7+height)*v, 16*v); } - if (meta == 1) { return new AxisAlignedBB(0, 7*v, (8-(width/2))*v, (length*v), (7+height)*v, (8+(width/2))*v); } - if (meta == 2) { return new AxisAlignedBB((8-(width/2))*v, 7*v, 0, (8+(width/2))*v, (7+height)*v, (length*v)); } - if (meta == 3) { return new AxisAlignedBB(16*v-(length*v), 7*v, (8-(width/2))*v, 16*v, (7+height)*v, (8+(width/2))*v); } - - return new AxisAlignedBB(0, 0.4375, 0, 1, 1, 1); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {ROTATION}); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - if (meta == 0) { this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.NORTH); } - if (meta == 1) { this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.EAST ); } - if (meta == 2) { this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.SOUTH); } - if (meta == 3) { this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.WEST ); } - return this.getDefaultState().withProperty(ROTATION, EnumSimpleRotation.byMetadata(meta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumSimpleRotation)state.getValue(ROTATION)).getMetadata(); - } - - @Override - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/TwoWayRotDecorativeBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/TwoWayRotDecorativeBlock.java deleted file mode 100644 index a3427f87..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/TwoWayRotDecorativeBlock.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class TwoWayRotDecorativeBlock extends GenericDecorativeBlock { - - public TwoWayRotDecorativeBlock(String name) { - super(name); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs tab, NonNullList items) { - items.add(new ItemStack(this, 1, 0)); - items.add(new ItemStack(this, 1, 2)); - items.add(new ItemStack(this, 1, 4)); - items.add(new ItemStack(this, 1, 6)); - items.add(new ItemStack(this, 1, 8)); - items.add(new ItemStack(this, 1, 10)); - items.add(new ItemStack(this, 1, 12)); - items.add(new ItemStack(this, 1, 14)); - } - - @SuppressWarnings("deprecation") - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - int rot = 0; - if (placer.getHorizontalFacing() == EnumFacing.EAST || placer.getHorizontalFacing() == EnumFacing.WEST) { rot = 1; } - return super.getStateForPlacement(world, pos, facing, hitX, hitY, hitZ, meta+rot, placer); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/decorative/WheelStopBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/decorative/WheelStopBlock.java deleted file mode 100644 index 263454e0..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/decorative/WheelStopBlock.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.silvaniastudios.roads.blocks.decorative; - -import javax.annotation.Nullable; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; - -public class WheelStopBlock extends FourWayRotDecorativeBlock { - - public WheelStopBlock(String name) { - super(name); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - return getBox(meta, getBlockBelowHeight(worldIn, pos)); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - return getBox(meta, getBlockBelowHeight(worldIn, pos)); - } - - - public AxisAlignedBB getBox(int meta, double belowHeight) { - float v = 1.0F/16.0F; - if (meta == 0 || meta == 4 || meta == 8 || meta == 12) { - return new AxisAlignedBB(0*v, -1+belowHeight, 1*v, 16*v, -1+belowHeight+(3*v), 5*v); - } - if (meta == 1 || meta == 5 || meta == 9 || meta == 13) { - return new AxisAlignedBB(11*v, -1+belowHeight, 0*v, 15*v, -1+belowHeight+(3*v), 16*v); - } - if (meta == 2 || meta == 6 || meta == 10 || meta == 14) { - return new AxisAlignedBB(0*v, -1+belowHeight, 11*v, 16*v, -1+belowHeight+(3*v), 15*v); - } - - return new AxisAlignedBB(1*v, -1+belowHeight, 0*v, 5*v, -1+belowHeight+(3*v), 16*v); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/diagonal/HalfBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/diagonal/HalfBlock.java deleted file mode 100644 index 1c554cf9..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/diagonal/HalfBlock.java +++ /dev/null @@ -1,344 +0,0 @@ -package com.silvaniastudios.roads.blocks.diagonal; - -import java.util.List; - -import com.silvaniastudios.roads.blocks.FRBlocks; - -import net.minecraft.block.BlockGrass; -import net.minecraft.block.BlockLeaves; -import net.minecraft.block.BlockLiquid; -import net.minecraft.block.material.Material; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.init.Blocks; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.common.property.IExtendedBlockState; -import net.minecraftforge.fluids.BlockFluidBase; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fluids.FluidStack; - -public class HalfBlock { - - RoadBlockDiagonal block; - private World world; - - private IBlockState stateSide; - private List quadsSide; - private BlockPos posSide; - private HalfBlock partnerBlock; - - private float height = 0; - - private BlockPos pos; - private TextureAtlasSprite sprite; - private int blockColour; - private HalfBlockSide side; - private EnumFacing facing; - - private boolean isFluid = false; - - public HalfBlock(IExtendedBlockState sharedState, HalfBlockSide side) { - this(sharedState, side, sharedState.getValue(RoadBlockDiagonal.POS), sharedState.getValue(RoadBlockDiagonal.FACING)); - } - - public HalfBlock(IExtendedBlockState sharedState, HalfBlockSide side, BlockPos pos, EnumFacing facing, World world) { - block = (RoadBlockDiagonal) sharedState.getBlock(); - - sharedState = (IExtendedBlockState) block.getExtendedState(sharedState, world, pos); - - this.side = side; - this.pos = pos; - this.facing = facing; - this.world = world; - - if (side == HalfBlockSide.LEFT) { - this.posSide = pos.offset(facing.rotateYCCW()); - this.stateSide = sharedState.getValue(RoadBlockDiagonal.LEFT); - } else if (side == HalfBlockSide.RIGHT) { - this.posSide = pos.offset(facing.rotateY()); - this.stateSide = sharedState.getValue(RoadBlockDiagonal.RIGHT); - } - - this.height = block.getSideHeight(sharedState, world, pos, side); - - if (stateSide.getBlock() instanceof BlockFluidBase) { - isFluid = true; - } - - if (stateSide.getBlock() instanceof BlockLiquid) { - - height = BlockLiquid.getBlockLiquidHeight(stateSide, world, posSide); - } - } - - public HalfBlock(IExtendedBlockState sharedState, HalfBlockSide side, BlockPos pos, EnumFacing facing) { - block = (RoadBlockDiagonal) sharedState.getBlock(); - this.world = Minecraft.getMinecraft().world; - Minecraft mc = Minecraft.getMinecraft(); - - sharedState = (IExtendedBlockState) block.getExtendedState(sharedState, world, pos); - - this.side = side; - this.pos = pos; - this.facing = facing; - - if (side == HalfBlockSide.LEFT) { - this.posSide = pos.offset( - facing.rotateYCCW()); - this.stateSide = sharedState.getValue(RoadBlockDiagonal.LEFT); - } else if (side == HalfBlockSide.RIGHT) { - this.posSide = pos.offset( - facing.rotateY()); - this.stateSide = sharedState.getValue(RoadBlockDiagonal.RIGHT); - } - - this.height = block.getSideHeight(sharedState, world, pos, side); - - //Grass paths annoyingly work differently to everything else?? Top and bottom quads seem to be swapped, and it's not a full block, and its particle is dirt not path. - if (stateSide.getBlock() == Blocks.GRASS_PATH) { - this.quadsSide = mc.getBlockRendererDispatcher().getModelForState(stateSide).getQuads(stateSide, null, 0); - sprite = quadsSide.get(0).getSprite(); - return; - } - - this.quadsSide = mc.getBlockRendererDispatcher().getModelForState(stateSide).getQuads(stateSide, EnumFacing.UP, 0); - - //Sprite handling - no sprite for no height, default sprite of particle texture - sprite = height == 0 ? null : mc.getBlockRendererDispatcher().getModelForState(stateSide).getParticleTexture(); - //If it's a normal cube, go for top texture instead. - if (quadsSide.size() > 0 && height > 0) { - sprite = quadsSide.get(0).getSprite(); - } - - //May revisit this to make it more robust later for other mods, but for now it works with roads/vanilla and maybe some mods. - if (stateSide.getBlock() instanceof BlockGrass || stateSide.getBlock() instanceof BlockLeaves || stateSide.getBlock() == FRBlocks.road_block_grass) { - //blockColour = mc.getBlockColors().getColor(stateSide, mc.world, posSide); - blockColour = world.getBiome(posSide).getGrassColorAtPos(posSide); - } - - if (stateSide.getBlock() instanceof BlockFluidBase) { - isFluid = true; - } - - if (stateSide.getBlock() instanceof BlockLiquid) { - Fluid fluid = null; - if (stateSide.getMaterial() == Material.WATER) { - fluid = FluidRegistry.WATER; - } else if (stateSide.getMaterial() == Material.LAVA) { - fluid = FluidRegistry.LAVA; - } - - height = BlockLiquid.getBlockLiquidHeight(stateSide, world, posSide); - - if (fluid != null) { - sprite = mc.getTextureMapBlocks().getAtlasSprite(fluid.getStill(new FluidStack(fluid, 1000)).toString()); - isFluid = true; - } - } - } - - public int getRotation() { - if (this.facing == EnumFacing.NORTH) { - return this.side == HalfBlockSide.LEFT ? 0 : 180; - } else if (this.facing == EnumFacing.EAST) { - return this.side == HalfBlockSide.LEFT ? 270 : 90; - } else if (this.facing == EnumFacing.SOUTH) { - return this.side == HalfBlockSide.LEFT ? 180 : 0; - } else { - return this.side == HalfBlockSide.LEFT ? 90 : 270; - } - } - - public float getHeight() { - return height; - } - - public TextureAtlasSprite getSprite() { - return sprite; - } - - public int getColour() { - return blockColour; - } - - public void setPartnerBlock(HalfBlock block) { - this.partnerBlock = block; - } - - public HalfBlock getPartnerBlock() { - return this.partnerBlock; - } - - public boolean renderNear() { - if (isFluid) { - if (this.side == HalfBlockSide.LEFT) { - return renderFar(); - } - IBlockState near = world.getBlockState(pos.offset(facing.getOpposite())); - return !checkStateForFluid(near, pos.offset(facing.getOpposite())); - } - return true; - } - - public boolean renderNearMirrored() { - if (isFluid) { - if (this.side == HalfBlockSide.RIGHT) { - return renderFarMirrored(); - } - IBlockState near = world.getBlockState(pos.offset(facing.getOpposite())); - return !checkStateForFluid(near, pos.offset(facing.getOpposite())); - } - return true; - } - - public boolean renderFar() { - if (isFluid) { - if (this.side == HalfBlockSide.RIGHT) { - return renderNear(); - } - IBlockState far = world.getBlockState(pos.offset(facing)); - return !checkStateForFluid(far, pos.offset(facing)); - } - return true; - } - - public boolean renderFarMirrored() { - if (isFluid) { - if (this.side == HalfBlockSide.LEFT) { - return renderNearMirrored(); - } - IBlockState far = world.getBlockState(pos.offset(facing)); - return !checkStateForFluid(far, pos.offset(facing)); - } - return true; - } - - public boolean renderTop() { - if (isFluid) { - IBlockState above = world.getBlockState(pos.offset(EnumFacing.UP)); - return !checkStateForFluid(above, pos.offset(EnumFacing.UP)); - } - return true; - } - - public boolean renderBottom() { - return !isFluid; - } - - public boolean renderDivision() { - if (isFluid && this.partnerBlock.isFluid) { - return false; - } - - if (world.getBlockState(pos).getValue(RoadBlockDiagonal.TRANSPARENCY)) { - return true; - } - - if (this.height == this.partnerBlock.height && !this.partnerBlock.isFluid) { - return false; - } - return true; - } - - public boolean checkStateForFluid(IBlockState state, BlockPos pos) { - if (state.getBlock() instanceof BlockLiquid || state.getBlock() instanceof BlockFluidBase) { - return true; - } - - if (state.getBlock() instanceof RoadBlockDiagonal) { - HalfBlock hbSide = getCardinalHalfBlock(state, pos, state.getValue(RoadBlockDiagonal.FACING), HalfBlockSide.getFacingFromDirection(this.side, this.facing)); - if (hbSide.isFluid()) { - return true; - } - } - return false; - } - - public float heightNW() { - return this.height; - } - - public float heightNE() { - return this.height; - } - - public float heightSE() { - return this.height; - } - - public float heightSW() { - return this.height; - } - - public boolean isFluid() { - return isFluid; - } - - public HalfBlock getCardinalHalfBlock(IBlockState state, BlockPos pos, EnumFacing blockFacing, EnumFacing blockSide) { - if (state instanceof IExtendedBlockState) { - IExtendedBlockState extendedState = (IExtendedBlockState) state; - return new HalfBlock(extendedState, HalfBlockSide.getSide(blockFacing, blockSide), pos, facing); - } - return null; - } - - public static HalfBlock getHalfBlock(IBlockState state, HalfBlockSide side, BlockPos pos, EnumFacing facing) { - if (state instanceof IExtendedBlockState) { - IExtendedBlockState extendedState = (IExtendedBlockState) state; - return new HalfBlock(extendedState, side, pos, facing); - } - - return null; - } - - - public static enum HalfBlockSide { - LEFT, - RIGHT; - - - public static EnumFacing getFacingFromDirection(HalfBlockSide side, EnumFacing blockFacing) { - if (blockFacing == EnumFacing.NORTH) { - return side == LEFT ? EnumFacing.WEST : EnumFacing.EAST; - } - - if (blockFacing == EnumFacing.EAST) { - return side == LEFT ? EnumFacing.NORTH : EnumFacing.SOUTH; - } - - if (blockFacing == EnumFacing.SOUTH) { - return side == LEFT ? EnumFacing.EAST : EnumFacing.WEST; - } - - if (blockFacing == EnumFacing.WEST) { - return side == LEFT ? EnumFacing.SOUTH : EnumFacing.NORTH; - } - - return null; - } - - public static HalfBlockSide getSide(EnumFacing blockFacing, EnumFacing sideCheck) { - if ((blockFacing == EnumFacing.NORTH && sideCheck == EnumFacing.WEST) || - (blockFacing == EnumFacing.EAST && sideCheck == EnumFacing.NORTH) || - (blockFacing == EnumFacing.SOUTH && sideCheck == EnumFacing.EAST) || - (blockFacing == EnumFacing.WEST && sideCheck == EnumFacing.SOUTH)) { - return LEFT; - } - - if ((blockFacing == EnumFacing.NORTH && sideCheck == EnumFacing.EAST) || - (blockFacing == EnumFacing.EAST && sideCheck == EnumFacing.SOUTH) || - (blockFacing == EnumFacing.SOUTH && sideCheck == EnumFacing.WEST) || - (blockFacing == EnumFacing.WEST && sideCheck == EnumFacing.NORTH)) { - return RIGHT; - } - - return null; - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/diagonal/RoadBlockDiagonal.java b/src/main/java/com/silvaniastudios/roads/blocks/diagonal/RoadBlockDiagonal.java deleted file mode 100644 index da4daac8..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/diagonal/RoadBlockDiagonal.java +++ /dev/null @@ -1,669 +0,0 @@ -package com.silvaniastudios.roads.blocks.diagonal; - -import java.util.ArrayList; -import java.util.List; - -import javax.annotation.Nullable; - -import com.google.common.collect.Lists; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.BlockBase; -import com.silvaniastudios.roads.blocks.diagonal.HalfBlock.HalfBlockSide; - -import com.silvaniastudios.roads.client.BoundingBoxDraw; -import net.minecraft.block.Block; -import net.minecraft.block.BlockLiquid; -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.properties.PropertyDirection; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.client.renderer.block.statemap.StateMapperBase; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.BlockRenderLayer; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.common.property.ExtendedBlockState; -import net.minecraftforge.common.property.IExtendedBlockState; -import net.minecraftforge.common.property.IUnlistedProperty; -import net.minecraftforge.fluids.BlockFluidBase; -import net.minecraftforge.fml.common.FMLCommonHandler; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class RoadBlockDiagonal extends BlockBase { - - public static final PropertyEnum FACING = PropertyDirection.create("facing", EnumFacing.Plane.HORIZONTAL); - public static final PropertyBool TRANSPARENCY = PropertyBool.create("transparency"); - - public static final UnlistedPropertySideBlock LEFT = new UnlistedPropertySideBlock("left"); - public static final UnlistedPropertySideBlock RIGHT = new UnlistedPropertySideBlock("right"); - public static final UnlistedPropertyBlockPos POS = new UnlistedPropertyBlockPos("pos"); - - private String modelName; - - boolean mirror; - float minWidth; - float maxWidth; - - public RoadBlockDiagonal(String name, boolean mirror, String modelName, float minWidth, float maxWidth) { - super(name, Material.ROCK); - setDefaultState(this.blockState.getBaseState().withProperty(FACING, EnumFacing.NORTH).withProperty(TRANSPARENCY, false)); - this.mirror = mirror; - this.setCreativeTab(FurenikusRoads.tab_diagonals); - this.setHarvestLevel("pneumatic_drill", 0); - this.setHardness(1.0F); - this.modelName = modelName; - this.minWidth = minWidth; - this.maxWidth = maxWidth; - } - - @SideOnly(Side.CLIENT) - @Override - public void addInformation(ItemStack stack, @Nullable World player, List tooltip, ITooltipFlag advanced) { - tooltip.add("Place other blocks alongside this to use. This block will not appear on its own."); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - BlockPos left = pos.offset(placer.getHorizontalFacing().rotateYCCW()); - BlockPos right = pos.offset(placer.getHorizontalFacing().rotateY()); - - IBlockState stateLeft = world.getBlockState(left); - IBlockState stateRight = world.getBlockState(right); - - boolean trans = false; - - if (FMLCommonHandler.instance().getEffectiveSide() == Side.CLIENT) { - if (stateLeft.getBlock().getBlockLayer() == BlockRenderLayer.TRANSLUCENT || stateRight.getBlock().getBlockLayer() == BlockRenderLayer.TRANSLUCENT) { - trans = true; - } - } - - return this.getDefaultState().withProperty(FACING, placer.getHorizontalFacing()).withProperty(TRANSPARENCY, trans); - } - - public int getMetaFromState(IBlockState state) { - int add = state.getValue(TRANSPARENCY) ? 4 : 0; - - if (state.getValue(FACING).equals(EnumFacing.NORTH)) { - return 0 + add; - } else if (state.getValue(FACING).equals(EnumFacing.EAST)) { - return 1 + add; - } else if (state.getValue(FACING).equals(EnumFacing.SOUTH)) { - return 2 + add; - } else if (state.getValue(FACING).equals(EnumFacing.WEST)) { - return 3 + add; - } - - return 0 + add; - } - - public IBlockState getStateFromMeta(int meta) { - int m = meta; - boolean t = false; - - if (meta > 3) { - m = meta-4; - t = true; - } - - if (m == 0) { return this.getDefaultState().withProperty(FACING, EnumFacing.NORTH).withProperty(TRANSPARENCY, t); } - if (m == 1) { return this.getDefaultState().withProperty(FACING, EnumFacing.EAST).withProperty(TRANSPARENCY, t); } - if (m == 2) { return this.getDefaultState().withProperty(FACING, EnumFacing.SOUTH).withProperty(TRANSPARENCY, t); } - return this.getDefaultState().withProperty(FACING, EnumFacing.WEST).withProperty(TRANSPARENCY, t); - } - - @Override - public void neighborChanged(IBlockState state, World worldIn, BlockPos pos, Block blockIn, BlockPos fromPos) { - BlockPos left = pos.offset(state.getValue(FACING).rotateYCCW()); - BlockPos right = pos.offset(state.getValue(FACING).rotateY()); - - IBlockState stateLeft = worldIn.getBlockState(left); - IBlockState stateRight = worldIn.getBlockState(right); - - //Server doesn't know about the renderer, so we'll just approximate for light propagation - boolean trans = !stateLeft.getBlock().isFullBlock(stateLeft) || !stateLeft.getBlock().isFullBlock(stateRight); - if (worldIn.isRemote) { - //Client we can be a bit more granular - if (stateLeft.getBlock().getBlockLayer() == BlockRenderLayer.TRANSLUCENT || stateRight.getBlock().getBlockLayer() == BlockRenderLayer.TRANSLUCENT) { - trans = true; - } - } - - worldIn.setBlockState(pos, state.withProperty(TRANSPARENCY, trans)); - } - - @SuppressWarnings("rawtypes") - protected BlockStateContainer createBlockState() { - IProperty[] listedProperties = new IProperty[] {FACING, TRANSPARENCY}; - IUnlistedProperty[] unlistedProperties = new IUnlistedProperty[] {LEFT, RIGHT, POS}; - - return new ExtendedBlockState(this, listedProperties, unlistedProperties); - } - - @Override - public IBlockState getExtendedState(IBlockState state, IBlockAccess world, BlockPos pos) { - IExtendedBlockState extendedBlockState = (IExtendedBlockState) state; - IBlockState l = getLeftBlock(state, world, pos); - IBlockState r = getRightBlock(state, world, pos); - - return extendedBlockState.withProperty(LEFT, l).withProperty(RIGHT, r).withProperty(POS, pos); - } - - public RayTraceResult collisionRayTrace(IBlockState blockState, World worldIn, BlockPos pos, Vec3d start, Vec3d end) { - List list = Lists.newArrayList(); - - for (AxisAlignedBB axisalignedbb : getBoxList(pos, worldIn, blockState)) { - list.add(this.rayTrace(pos, start, end, axisalignedbb)); - } - - RayTraceResult raytraceresult1 = null; - double d1 = 0.0D; - - for (RayTraceResult raytraceresult : list) { - if (raytraceresult != null) { - double d0 = raytraceresult.hitVec.squareDistanceTo(end); - - if (d0 > d1) { - raytraceresult1 = raytraceresult; - d1 = d0; - } - } - } - - return raytraceresult1; - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return new AxisAlignedBB(0.0, 0.0, 0.0, 0.0, 0.0, 0.0); - } - - public ArrayList getBoxList(BlockPos pos, World world, IBlockState state) { - ArrayList list = new ArrayList<>(); - - EnumFacing facing = state.getValue(FACING); - BlockPos posLeft = pos.offset(facing.rotateYCCW()); - BlockPos posRight = pos.offset(facing.rotateY()); - - IBlockState leftState = getLeftBlock(state, world, pos); - IBlockState rightState = getRightBlock(state, world, pos); - - double leftHeight = getBlockHeight(world, leftState, posLeft); - double rightHeight = getBlockHeight(world, rightState, posRight); - - boolean leftFluid = leftState != null ? leftState.getBlock() instanceof BlockFluidBase || leftState.getBlock() instanceof BlockLiquid : false; - boolean rightFluid = rightState != null ? rightState.getBlock() instanceof BlockFluidBase || rightState.getBlock() instanceof BlockLiquid : false; - - if (isAir(leftState, world, posLeft) && isAir(rightState, world, posRight)) { - list.add(new AxisAlignedBB(0.0f, 0.0f, 0.0f, 1.0f, 1.0f, 1.0f)); - return list; - } - - //air is basically fluid right? - if (isAir(leftState, world, posLeft)) { leftFluid = true; } - if (isAir(rightState, world, posRight)) { rightFluid = true; } - - if (leftHeight == rightHeight && !leftFluid && !rightFluid) { - list.add(new AxisAlignedBB(0.0f, 0.0f, 0.0f, 1.0f, leftHeight, 1.0f)); - return list; - } - - float width = maxWidth - minWidth; - float eighth = width/8f; - - float step1 = 1.00f; - float step2 = 0.75f; - float step3 = 0.50f; - float step4 = 0.25f; - - float step = 0.25f; - - if (mirror) { - step1 = 0.25f; - step2 = 0.50f; - step3 = 0.75f; - step4 = 1.00f; - } - - if (facing.equals(EnumFacing.NORTH)) { - if (!leftFluid) { - list.add(new AxisAlignedBB(0.0f, 0.0f, step1 - step, minWidth + (width*0.25) - eighth, leftHeight, step1)); - list.add(new AxisAlignedBB(0.0f, 0.0f, step2 - step, minWidth + (width*0.50) - eighth, leftHeight, step2)); - list.add(new AxisAlignedBB(0.0f, 0.0f, step3 - step, minWidth + (width*0.75) - eighth, leftHeight, step3)); - list.add(new AxisAlignedBB(0.0f, 0.0f, step4 - step, minWidth - eighth, leftHeight, step4)); - } - - if (!rightFluid) { - list.add(new AxisAlignedBB(minWidth + eighth, 0.0f, step1 - step, 1.0f, rightHeight, step1)); - list.add(new AxisAlignedBB(minWidth + (width*0.25) + eighth, 0.0f, step2 - step, 1.0f, rightHeight, step2)); - list.add(new AxisAlignedBB(minWidth + (width*0.50) + eighth, 0.0f, step3 - step, 1.0f, rightHeight, step3)); - list.add(new AxisAlignedBB(minWidth + (width*0.75) + eighth, 0.0f, step4 - step, 1.0f, rightHeight, step4)); - } - } - - if (facing.equals(EnumFacing.EAST)) { - if (!leftFluid) { - list.add(new AxisAlignedBB(step4 - step, 0.0f, 0.0f, step4, leftHeight, minWidth + (width*0.25) - eighth)); - list.add(new AxisAlignedBB(step3 - step, 0.0f, 0.0f, step3, leftHeight, minWidth + (width*0.50) - eighth)); - list.add(new AxisAlignedBB(step2 - step, 0.0f, 0.0f, step2, leftHeight, minWidth + (width*0.75) - eighth)); - list.add(new AxisAlignedBB(step1 - step, 0.0f, 0.0f, step1, leftHeight, minWidth - eighth)); - } - - if (!rightFluid) { - list.add(new AxisAlignedBB(step4 - step, 0.0f, minWidth + eighth, step4, rightHeight, 1.0f)); - list.add(new AxisAlignedBB(step3 - step, 0.0f, minWidth + (width*0.25) + eighth, step3, rightHeight, 1.0f)); - list.add(new AxisAlignedBB(step2 - step, 0.0f, minWidth + (width*0.50) + eighth, step2, rightHeight, 1.0f)); - list.add(new AxisAlignedBB(step1 - step, 0.0f, minWidth + (width*0.75) + eighth, step1, rightHeight, 1.0f)); - } - } - - double h100 = 1.0 - maxWidth + ((width*1.00) - eighth); - double h075 = 1.0 - maxWidth + ((width*0.75) - eighth); - double h050 = 1.0 - maxWidth + ((width*0.50) - eighth); - double h025 = 1.0 - maxWidth + ((width*0.25) - eighth); - - if (facing.equals(EnumFacing.SOUTH)) { - if (!leftFluid) { - list.add(new AxisAlignedBB(1.0 - (minWidth + eighth), 0.0f, step4 - step, 1, leftHeight, step4)); - list.add(new AxisAlignedBB(1.0 - (minWidth + (width*0.25) + eighth), 0.0f, step3 - step, 1, leftHeight, step3)); - list.add(new AxisAlignedBB(1.0 - (minWidth + (width*0.50) + eighth), 0.0f, step2 - step, 1, leftHeight, step2)); - list.add(new AxisAlignedBB(1.0 - (minWidth + (width*0.75) + eighth), 0.0f, step1 - step, 1, leftHeight, step1)); - } - - if (!rightFluid) { - list.add(new AxisAlignedBB(0.0, 0.0, step4 - step, h100, rightHeight, step4)); - list.add(new AxisAlignedBB(0.0, 0.0, step3 - step, h075, rightHeight, step3)); - list.add(new AxisAlignedBB(0.0, 0.0, step2 - step, h050, rightHeight, step2)); - list.add(new AxisAlignedBB(0.0, 0.0, step1 - step, h025, rightHeight, step1)); - } - } - - if (facing.equals(EnumFacing.WEST)) { - if (!leftFluid) { - list.add(new AxisAlignedBB(step1 - step, 0.0, 1.0 - (minWidth + eighth), step1, leftHeight, 1)); - list.add(new AxisAlignedBB(step2 - step, 0.0, 1.0 - (minWidth + (width*0.25) + eighth), step2, leftHeight, 1)); - list.add(new AxisAlignedBB(step3 - step, 0.0, 1.0 - (minWidth + (width*0.50) + eighth), step3, leftHeight, 1)); - list.add(new AxisAlignedBB(step4 - step, 0.0, 1.0 - (minWidth + (width*0.75) + eighth), step4, leftHeight, 1)); - } - - if (!rightFluid) { - list.add(new AxisAlignedBB(step1 - step, 0.0, 0.0, step1, rightHeight, h100)); - list.add(new AxisAlignedBB(step2 - step, 0.0, 0.0, step2, rightHeight, h075)); - list.add(new AxisAlignedBB(step3 - step, 0.0, 0.0, step3, rightHeight, h050)); - list.add(new AxisAlignedBB(step4 - step, 0.0, 0.0, step4, rightHeight, h025)); - } - } - - return list; - } - - public Vec3d[] getLeftVecs(World world, IBlockState state, BlockPos pos) { - Vec3d vecs[] = new Vec3d[16]; - EnumFacing facing = state.getValue(FACING); - - BlockPos posLeft = pos.offset(facing.rotateYCCW()); - BlockPos posRight = pos.offset(facing.rotateY()); - - boolean airLeft = world.getBlockState(posLeft).getBlock().isAir(world.getBlockState(posLeft), world, posLeft); - boolean airRight = world.getBlockState(posRight).getBlock().isAir(world.getBlockState(posRight), world, posRight); - - double height = getBlockHeight(world, getLeftBlock(state, world, pos), posLeft); - - if (airLeft) { - height = airRight ? 1 : 0; - } - - if (getHalfBlock(state, HalfBlockSide.LEFT, posLeft, facing, world).isFluid()) { - for (int i = 0; i < vecs.length; i++) { - vecs[i] = new Vec3d(0,0,0); - } - return vecs; - } - - double g = 0.0020000000949949026D; //The amount a vanilla drawn box is bigger than the actual collision box - - if (mirror) { - vecs[0] = new Vec3d(0-g, 0-g, 0-g); - vecs[1] = new Vec3d(minWidth+g, 0-g, 0-g); - vecs[2] = new Vec3d(maxWidth+g, 0-g, 1+g); - vecs[3] = new Vec3d(0-g, 0-g, 1+g); - - vecs[4] = new Vec3d(0-g, 0-g, 0-g); - - vecs[5] = new Vec3d(0-g, height+g, 0-g); - vecs[6] = new Vec3d(minWidth+g, height+g, 0-g); - vecs[7] = new Vec3d(maxWidth+g, height+g, 1+g); - vecs[8] = new Vec3d(0-g, height+g, 1+g); - - vecs[9] = new Vec3d(0-g, height+g, 0-g); - - vecs[10] = new Vec3d(0-g, height+g, 1+g); - - vecs[11] = new Vec3d(0-g, 0-g, 1+g); - vecs[12] = new Vec3d(maxWidth+g, 0-g, 1+g); - - vecs[13] = new Vec3d(maxWidth+g, height+g, 1+g); - vecs[14] = new Vec3d(minWidth+g, height+g, 0-g); - vecs[15] = new Vec3d(minWidth+g, 0-g, 0-g); - } else { - vecs[0] = new Vec3d(0-g, 0-g, 0-g); - vecs[1] = new Vec3d(maxWidth+g, 0-g, 0-g); - vecs[2] = new Vec3d(minWidth+g, 0-g, 1+g); - vecs[3] = new Vec3d(0-g, 0-g, 1+g); - - vecs[4] = new Vec3d(0-g, 0-g, 0-g); - - vecs[5] = new Vec3d(0-g, height+g, 0-g); - vecs[6] = new Vec3d(maxWidth+g, height+g, 0-g); - vecs[7] = new Vec3d(minWidth+g, height+g, 1+g); - vecs[8] = new Vec3d(0-g, height+g, 1+g); - - vecs[9] = new Vec3d(0-g, height+g, 0-g); - - vecs[10] = new Vec3d(0-g, height+g, 1+g); - - vecs[11] = new Vec3d(0-g, 0-g, 1+g); - vecs[12] = new Vec3d(minWidth+g, 0-g, 1+g); - - vecs[13] = new Vec3d(minWidth+g, height+g, 1+g); - vecs[14] = new Vec3d(maxWidth+g, height+g, 0-g); - vecs[15] = new Vec3d(maxWidth+g, 0-g, 0-g); - } - - - if (facing.equals(EnumFacing.EAST)) { - vecs = BoundingBoxDraw.getRotatedVecs(vecs, 270, new Vec3d(2,0,0)); - } - - if (facing.equals(EnumFacing.SOUTH)) { - vecs = BoundingBoxDraw.getRotatedVecs(vecs, 180, new Vec3d(2,0,2)); - } - - if (facing.equals(EnumFacing.WEST)) { - vecs = BoundingBoxDraw.getRotatedVecs(vecs, 90, new Vec3d(0,0,2)); - } - - return vecs; - } - - public Vec3d[] getRightVecs(World world, IBlockState state, BlockPos pos) { - Vec3d vecs[] = new Vec3d[16]; - EnumFacing facing = state.getValue(FACING); - - BlockPos posLeft = pos.offset(facing.rotateYCCW()); - BlockPos posRight = pos.offset(facing.rotateY()); - - boolean airLeft = world.getBlockState(posLeft).getBlock().isAir(world.getBlockState(posLeft), world, posLeft); - boolean airRight = world.getBlockState(posRight).getBlock().isAir(world.getBlockState(posRight), world, posRight); - - double height = getBlockHeight(world, getRightBlock(state, world, pos), posRight); - - if (airRight) { - height = airLeft ? 1 : 0; - } - - if (getHalfBlock(state, HalfBlockSide.RIGHT, posRight, facing, world).isFluid()) { - for (int i = 0; i < vecs.length; i++) { - vecs[i] = new Vec3d(0,0,0); - } - return vecs; - } - - double g = 0.0020000000949949026D; //The amount a vanilla drawn box is bigger than the actual collision box - - if (mirror) { - vecs[0] = new Vec3d(minWidth-g, 0-g, 0-g); - vecs[1] = new Vec3d(1+g, 0-g, 0-g); - vecs[2] = new Vec3d(1+g, 0-g, 1+g); - vecs[3] = new Vec3d(maxWidth-g, 0-g, 1+g); - - vecs[4] = new Vec3d(minWidth-g, 0-g, 0-g); - - vecs[5] = new Vec3d(minWidth-g, height+g, 0-g); - vecs[6] = new Vec3d(1+g, height+g, 0-g); - vecs[7] = new Vec3d(1+g, height+g, 1+g); - vecs[8] = new Vec3d(maxWidth-g, height+g, 1+g); - - vecs[9] = new Vec3d(minWidth-g, height+g, 0-g); - - vecs[10] = new Vec3d(maxWidth-g, height+g, 1+g); - - vecs[11] = new Vec3d(maxWidth-g, 0-g, 1+g); - vecs[12] = new Vec3d(1+g, 0-g, 1+g); - - vecs[13] = new Vec3d(1+g, height+g, 1+g); - vecs[14] = new Vec3d(1+g, height+g, 0-g); - vecs[15] = new Vec3d(1+g, 0-g, 0-g); - } else { - vecs[0] = new Vec3d(maxWidth-g, 0-g, 0-g); - vecs[1] = new Vec3d(1+g, 0-g, 0-g); - vecs[2] = new Vec3d(1+g, 0-g, 1+g); - vecs[3] = new Vec3d(minWidth-g, 0-g, 1+g); - - vecs[4] = new Vec3d(maxWidth-g, 0-g, 0-g); - - vecs[5] = new Vec3d(maxWidth-g, height+g, 0-g); - vecs[6] = new Vec3d(1+g, height+g, 0-g); - vecs[7] = new Vec3d(1+g, height+g, 1+g); - vecs[8] = new Vec3d(minWidth-g, height+g, 1+g); - - vecs[9] = new Vec3d(maxWidth-g, height+g, 0-g); - - vecs[10] = new Vec3d(minWidth-g, height+g, 1+g); - - vecs[11] = new Vec3d(minWidth-g, 0-g, 1+g); - vecs[12] = new Vec3d(1+g, 0-g, 1+g); - - vecs[13] = new Vec3d(1+g, height+g, 1+g); - vecs[14] = new Vec3d(1+g, height+g, 0-g); - vecs[15] = new Vec3d(1+g, 0-g, 0-g); - } - - - if (facing.equals(EnumFacing.EAST)) { - vecs = BoundingBoxDraw.getRotatedVecs(vecs, 270, new Vec3d(2,0,0)); - } - - if (facing.equals(EnumFacing.SOUTH)) { - vecs = BoundingBoxDraw.getRotatedVecs(vecs, 180, new Vec3d(2,0,2)); - } - - if (facing.equals(EnumFacing.WEST)) { - vecs = BoundingBoxDraw.getRotatedVecs(vecs, 90, new Vec3d(0,0,2)); - } - - return vecs; - } - - - - - @Override - public void addCollisionBoxToList(IBlockState state, World world, BlockPos pos, AxisAlignedBB entityBox, List collidingBoxes, @Nullable Entity entityIn, boolean isActualState) { - ArrayList list = getBoxList(pos, world, state); - for (int i = 0; i < list.size(); i++) { - addCollisionBoxToList(pos, entityBox, collidingBoxes, list.get(i)); - } - } - - - public IBlockState getLeftBlock(IBlockState state, IBlockAccess world, BlockPos pos) { - EnumFacing facingLeft; - - if (state.getValue(FACING).equals(EnumFacing.NORTH)) { - facingLeft = EnumFacing.WEST; - } else if (state.getValue(FACING).equals(EnumFacing.EAST)) { - facingLeft = EnumFacing.NORTH; - } else if (state.getValue(FACING).equals(EnumFacing.SOUTH)) { - facingLeft = EnumFacing.EAST; - } else { - facingLeft = EnumFacing.SOUTH; - } - - IBlockState stateLeft = world.getBlockState(pos.offset(facingLeft)); - - return stateLeft; - } - - public IBlockState getRightBlock(IBlockState state, IBlockAccess world, BlockPos pos) { - EnumFacing facingRight; - - if (state.getValue(FACING).equals(EnumFacing.NORTH)) { - facingRight = EnumFacing.EAST; - } else if (state.getValue(FACING).equals(EnumFacing.EAST)) { - facingRight = EnumFacing.SOUTH; - } else if (state.getValue(FACING).equals(EnumFacing.SOUTH)) { - facingRight = EnumFacing.WEST; - } else { - facingRight = EnumFacing.NORTH; - } - - IBlockState stateRight = world.getBlockState(pos.offset(facingRight)); - - return stateRight; - } - - @SuppressWarnings("deprecation") - public double getBlockHeight(IBlockAccess world, IBlockState state, BlockPos pos) { - Block block = state.getBlock(); - if (block instanceof RoadBlockDiagonal || !block.isCollidable()) { - return 0.0d; - } - return block.getBoundingBox(state, world, pos).maxY; - } - - public IBlockState getRoad(IBlockAccess world, BlockPos pos) { - return getBlockSide(world, pos, this.mirror); - } - - public BlockPos getRoadPos(IBlockAccess world, BlockPos pos) { - return getSidePos(pos, world.getBlockState(pos), this.mirror); - } - - public IBlockState getSidewalk(IBlockAccess world, BlockPos pos, EnumFacing facing) { - return getBlockSide(world, pos, !this.mirror); - } - - public IBlockState getBlockSide(IBlockAccess world, BlockPos pos, boolean left) { - IBlockState thisState = world.getBlockState(pos); - return world.getBlockState(getSidePos(pos, thisState, left)); - } - - //pass true to get the pos on the left, false to get the pos on the right - public BlockPos getSidePos(BlockPos pos, IBlockState state, boolean left) { - EnumFacing facing = state.getValue(FACING); - if (facing == EnumFacing.NORTH) { - return left ? pos.offset(EnumFacing.WEST) : pos.offset(EnumFacing.EAST); - } else if (facing == EnumFacing.EAST) { - return left ? pos.offset(EnumFacing.SOUTH) : pos.offset(EnumFacing.NORTH); - } else if (facing == EnumFacing.SOUTH) { - return left ? pos.offset(EnumFacing.EAST) : pos.offset(EnumFacing.WEST); - } else { - return left ? pos.offset(EnumFacing.NORTH) : pos.offset(EnumFacing.SOUTH); - } - } - - @SideOnly(Side.CLIENT) - public void initModel() { - StateMapperBase b = new StateMapperBase() { - @Override - protected ModelResourceLocation getModelResourceLocation(IBlockState state) { - return new ModelResourceLocation(FurenikusRoads.MODID + ":" + modelName); - } - }; - - ModelLoader.setCustomStateMapper(this, b); - } - - @SideOnly(Side.CLIENT) - public void initItemModel() { - Item itemBlock = Item.REGISTRY.getObject(new ResourceLocation(FurenikusRoads.MODID, this.name)); - ModelResourceLocation itemModelResourceLocation = new ModelResourceLocation(getRegistryName(), "inventory"); - final int DEFAULT_ITEM_SUBTYPE = 0; - Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(itemBlock, DEFAULT_ITEM_SUBTYPE, itemModelResourceLocation); - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - @SideOnly(Side.CLIENT) - public boolean canRenderInLayer(IBlockState state, BlockRenderLayer layer) { - if (state != null) { - if (state.getValue(TRANSPARENCY)) { - return BlockRenderLayer.TRANSLUCENT == layer; - } - } - - return getBlockLayer() == layer; - } - - @SideOnly(Side.CLIENT) - @Override - public BlockRenderLayer getBlockLayer() { - return BlockRenderLayer.CUTOUT_MIPPED; - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - //if (this.getMetaFromState(state) < 15 && face != EnumFacing.DOWN && face != EnumFacing.UP) { //TODO checks for the sake of other blocks culling. - return BlockFaceShape.UNDEFINED; - } - - //Prevent water rendering when up against this - @SuppressWarnings("deprecation") - @Override - public boolean doesSideBlockRendering(IBlockState state, IBlockAccess world, BlockPos pos, EnumFacing face) { - Block block = world.getBlockState(pos.offset(face)).getBlock(); - if (block.getMaterial(world.getBlockState(pos.offset(face))) == Material.WATER) { - return true; - } - - if (block.getBlockLayer() == BlockRenderLayer.TRANSLUCENT) { - return true; - } - - return super.doesSideBlockRendering(state, world, pos, face); - } - - @SuppressWarnings("deprecation") - public float getSideHeight(IBlockState state, World world, BlockPos pos, HalfBlock.HalfBlockSide side) { - EnumFacing facing = state.getValue(RoadBlockDiagonal.FACING); - BlockPos posSide = (side == HalfBlock.HalfBlockSide.LEFT) ? pos.offset(facing.rotateYCCW()) : pos.offset(facing.rotateY()); - IBlockState stateSide = world.getBlockState(posSide); - if (stateSide.getBlock().isAir(stateSide, world, posSide)) { - return 0; - } - return (float) stateSide.getBlock().getBoundingBox(stateSide, Minecraft.getMinecraft().world, posSide).maxY; - } - - public HalfBlock getHalfBlock(IBlockState state, HalfBlock.HalfBlockSide side, BlockPos pos, EnumFacing facing, World world) { - IExtendedBlockState extendedState = (IExtendedBlockState) state; - return new HalfBlock(extendedState, side, pos, facing, world); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/diagonal/ShapeLibrary.java b/src/main/java/com/silvaniastudios/roads/blocks/diagonal/ShapeLibrary.java deleted file mode 100644 index 0e64ab5c..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/diagonal/ShapeLibrary.java +++ /dev/null @@ -1,460 +0,0 @@ -package com.silvaniastudios.roads.blocks.diagonal; - -import java.awt.*; -import java.awt.image.BufferedImage; -import java.io.File; -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; - -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.DefaultVertexFormats; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.math.Vec3d; - -import javax.imageio.ImageIO; - -public class ShapeLibrary { - - /* - * - * #### # # # #### ##### #### - * # # # # # # # # # - * # # # # # # # # # - * ### ##### ##### #### #### ### - * # # # # # # # # - * # # # # # # # # - * #### # # # # # ##### #### - * - */ - - - public static List shapeFromGrid(boolean[][] grid, float top, TextureAtlasSprite sprite, VertexFormat format, boolean drawBottom) { - return shapeFromGrid(grid, top, sprite, format, drawBottom, 1.0f); - } - - public static List shapeFromGrid(boolean[][] grid, float top, TextureAtlasSprite sprite, VertexFormat format, boolean drawBottom, float scale) { - List quads = new ArrayList<>(); - float p = scale / grid.length; - float p2 = scale / 64.0f; - - for (int i = 0; i < grid.length; i++) { - for (int j = 0; j < grid[i].length; j++) { - if (grid[j][i]) { - //north edge - if (i == 0 || (i-1 >= 0 && !grid[j][i-1])) { - quads.add(new Quad( - new Vec3d(j*p+p, top-p2, i*p), 0, 0.5f, //BL - new Vec3d(j*p, top-p2, i*p), 0.5f, 0.5f, //BR - new Vec3d(j*p, top, i*p), 0.5f, 0, //TR - new Vec3d(j*p+p, top, i*p), 0, 0, //TL - sprite, format)); - } - - //east side - if (j+1 == grid.length || (j+1 < grid.length && !grid[j+1][i])) { - quads.add(new Quad( - new Vec3d(j*p+p, top-p2, i*p+p), 0, 0.5f, //BL - new Vec3d(j*p+p, top-p2, i*p), 0.5f, 0.5f, //BR - new Vec3d(j*p+p, top, i*p), 0.5f, 0, //TR - new Vec3d(j*p+p, top, i*p+p), 0, 0, //TL - sprite, format)); - } - - //south side - if (i+1 == grid.length || (i+1 < grid.length && !grid[j][i+1])) { - quads.add(new Quad( - new Vec3d(j*p, top-p2, i*p+p), 0, 0.5f, //BL - new Vec3d(j*p+p, top-p2, i*p+p), 0.5f, 0.5f, //BR - new Vec3d(j*p+p, top, i*p+p), 0.5f, 0, //TR - new Vec3d(j*p, top, i*p+p), 0, 0, //TL - sprite, format)); - } - - //west side - if (j == 0 || (j-1 >= 0 && !grid[j-1][i])) { - quads.add(new Quad( - new Vec3d(j*p, top-p2, i*p), 0, 0.5f, //BL - new Vec3d(j*p, top-p2, i*p+p), 0.5f, 0.5f, //BR - new Vec3d(j*p, top, i*p+p), 0.5f, 0, //TR - new Vec3d(j*p, top, i*p), 0, 0, //TL - sprite, format)); - } - - - - quads.add(new Quad( //Top - new Vec3d(j*p, top, i*p+p), //BL - new Vec3d(j*p+p, top, i*p+p), //BR - new Vec3d(j*p+p, top, i*p), //TR - new Vec3d(j*p, top, i*p), //TL - sprite, format)); - - if (drawBottom) { - quads.add(new Quad( //Bottom - new Vec3d(j*p+p, top-p2, i*p+p), //BL - new Vec3d(j*p, top-p2, i*p+p), //BR - new Vec3d(j*p, top-p2, i*p), //TR - new Vec3d(j*p+p, top-p2, i*p), //TL - sprite, format)); - } - } - } - } - - return quads; - } - - public static List shapeFromGridFlat(boolean[][] grid, float xMin, float xMax, float yMin, float yMax, float zMin, float zMax, TextureAtlasSprite sprite) { - sprite.setFramesTextureData(null); - List quads = new ArrayList<>(); - - float deltaX = xMax - xMin; - float deltaY = yMax - yMin; - float deltaZ = zMax - zMin; - float x = deltaX / (grid.length); - float y = deltaY / (grid.length); - float z = deltaZ / (grid.length); - - for (int i = 0; i < grid.length; i++) { - for (int j = 0; j < grid[i].length; j++) { - if (grid[j][i]) { - quads.add(new Quad( - new Vec3d(xMin + x*j + x, yMax - i*y, zMin + z*i), //BL - new Vec3d(xMin + x*j, yMax - i*y, zMin + z*i), //BR - new Vec3d(xMin + x*j, yMax - i*y - y, zMin + z*i + z), //TR - new Vec3d(xMin + x*j + x, yMax - i*y - y, zMin + z*i + z), //TL - sprite, DefaultVertexFormats.ITEM)); - } - } - } - - return quads; - } - - - public static List shapeTriangleLeft(HalfBlock block, double width, VertexFormat format) { - List quads = new ArrayList<>(); - float height = block.getHeight(); - TextureAtlasSprite sprite = block.getSprite(); - - Quad top = null; - Quad bottom = null; - Quad north = null; - Quad east = null; - - if (block.renderTop()) { - if (block.isFluid()) { - top = new Quad( //Top - new Vec3d(0, block.heightSW(), 0.5), //BL - new Vec3d(0, block.heightSE(), 1), //BR - new Vec3d(1-width, block.heightNE(), 0), //TR - new Vec3d(0, block.heightNW(), 0), //TL - sprite, format); - bottom = new Quad( //bottom - new Vec3d(0, block.heightSW(), 0), - new Vec3d(1-width, block.heightNW(), 0), - new Vec3d(0, block.heightNE(), 1), - new Vec3d(0, block.heightSE(), 0.5), - sprite, format); - } else { - top = new Quad( //Top - new Vec3d(0, height, 0.5), //BL - new Vec3d(0, height, 1), //BR - new Vec3d(1-width, height, 0), //TR - new Vec3d(0, height, 0), //TL - sprite, format); - } - } - - if (block.renderBottom()) { - bottom = new Quad( //bottom - new Vec3d(0, 0, 0), - new Vec3d(1-width, 0, 0), - new Vec3d(0, 0, 1), - new Vec3d(0, 0, 0.5), - sprite, format); - - } - - if (block.renderNear()) { - north = new Quad( - new Vec3d(1-width, height, 0), (float) width*16f, 16-height*16f, - new Vec3d(1-width, 0, 0), (float) width*16f, 16, - new Vec3d(0, 0, 0), 16, 16, - new Vec3d(0, height, 0), 16, 16-height*16f, - sprite, format); - - } - - if (block.renderDivision()) { - east = new Quad( //East (long) side - new Vec3d(0, height, 1), 0, 16-height*16f, //TL - new Vec3d(0, 0, 1), 0, 16, //BL - new Vec3d(1-width, 0, 0), 16, 16, //BR - new Vec3d(1-width, height, 0), 16, 16-height*16f,//TL - sprite, format); - - } - - quads.add(top); - quads.add(bottom); - quads.add(north); - quads.add(east); - return quads; - } - - - public static List shapeTriangleRight(HalfBlock block, double width, VertexFormat format) { - List quads = new ArrayList<>(); - float height = block.getHeight(); - TextureAtlasSprite sprite = block.getSprite(); - - Quad top = null; - Quad bottom = null; - Quad north = null; - Quad east = null; - - if (block.renderTop()) { - if (block.isFluid()) { - top = new Quad( //Top - new Vec3d(0, block.heightSW(), 0.5), //BL - new Vec3d(0, block.heightSE(), 1), //BR - new Vec3d(1-width, block.heightNE(), 1), //TR - new Vec3d(0, block.heightNW(), 0), //TL - sprite, format); - bottom = new Quad( //bottom - new Vec3d(1-width, block.heightSW(), 1), - new Vec3d(0, block.heightNW(), 1), - new Vec3d(0, block.heightNE(), 0.5), - new Vec3d(0, block.heightSE(), 0), - sprite, format); - } else { - top = new Quad( //Top - new Vec3d(0, height, 0.5), //BL - new Vec3d(0, height, 1), //BR - new Vec3d(1-width, height, 1), //TR - new Vec3d(0, height, 0), //TL - sprite, format); - } - } - - if (block.renderBottom()) { - bottom = new Quad( //bottom - new Vec3d(1-width, 0, 1), - new Vec3d(0, 0, 1), - new Vec3d(0, 0, 0.5), - new Vec3d(0, 0, 0), - sprite, format); - } - - if (block.renderFarMirrored()) { - north = new Quad( //North side - new Vec3d(0, height, 1), 0, 16-height*16f, - new Vec3d(0, 0, 1), 0, 16, - new Vec3d(1-width, 0, 1), (float) width*16f, 16, - new Vec3d(1-width, height, 1), (float) width*16f, 16-height*16f, - sprite, format); - } - - if (block.renderDivision()) { - east = new Quad( //East (long) side - new Vec3d(1-width, height, 1), 0, 16-height*16f, //TL - new Vec3d(1-width, 0, 1), 0, 16, //BL - new Vec3d(0, 0, 0), 16, 16, //BR - new Vec3d(0, height, 0), 16, 16-height*16f,//TL - sprite, format); - } - - quads.add(top); - quads.add(bottom); - quads.add(north); - quads.add(east); - - return quads; - } - - - //Omits the left side face - public static List shapeTrapeziumLeft(HalfBlock block, double widthN, double widthW, VertexFormat format) { - List quads = new ArrayList<>(); - float height = block.getHeight(); - TextureAtlasSprite sprite = block.getSprite(); - - Quad top = null; - Quad bottom = null; - Quad south = null; - Quad north = null; - Quad front = null; - - if (block.renderTop()) { - if (block.isFluid()) { - top = new Quad( //Top - new Vec3d(0.0, block.heightSW(), 1.0),//south west - new Vec3d(widthN, block.heightSE(), 1.0), //south east - new Vec3d(widthW, block.heightNE(), 0.0), //north east - new Vec3d(0, block.heightNW(), 0.0), //north west - sprite, format); - bottom = new Quad( //Bottom - new Vec3d(widthN, block.heightSW(), 1), //Bottom left - new Vec3d(0, block.heightNW(), 1), - new Vec3d(0, block.heightNE(), 0), - new Vec3d(widthW, block.heightSE(), 0), - sprite, format); - } else { - top = new Quad( //Top - new Vec3d(0.0, height, 1.0),//south west - new Vec3d(widthN, height, 1.0), //south east - new Vec3d(widthW, height, 0.0), //north east - new Vec3d(0, height, 0.0), //north west - sprite, format); - } - } - - if (block.renderBottom()) { - bottom = new Quad( //Bottom - new Vec3d(widthN, 0, 1), //Bottom left - new Vec3d(0, 0, 1), - new Vec3d(0, 0, 0), - new Vec3d(widthW, 0, 0), - sprite, format); - } - - if (block.renderFar()) { - south = new Quad( - new Vec3d(widthN, height, 1.0), (float) (16f*widthN), 16 - (float) (16f * height),//south west - new Vec3d(0, height, 1.0), 0, 16 - (float) (16f * height),//south east - new Vec3d(0, 0.0, 1.0), 0, 16,//north east - new Vec3d(widthN, 0.0, 1.0), (float) (16f*widthN), 16, //north west - sprite, format); - } - - if (block.renderNear()) { - north = new Quad( - new Vec3d(widthW, 0, 0), 0, 16,//south west - new Vec3d(0, 0, 0), (float) (16f*widthW), 16,//south east - new Vec3d(0, height, 0), (float) (16f*widthW), 16 - (float) (16f * height),//north east - new Vec3d(widthW, height, 0), 0, 16 - (float) (16f * height), //north west - sprite, format); - } - - if (block.renderDivision()) { - front = new Quad( //Front (long side) - new Vec3d(widthN, 0, 1.0), 0, 16,//south west - new Vec3d(widthW, 0, 0.0), 16, 16,//south east - new Vec3d(widthW, height, 0.0), 16, 16-height * 16f,//north east - new Vec3d(widthN, height, 1.0), 0, 16-height * 16f,//north west - sprite, format); - } - - quads.add(top); - quads.add(bottom); - quads.add(south); - quads.add(north); - quads.add(front); - - return quads; - } - - //Omits the right side face - public static List shapeTrapeziumRight(HalfBlock block, double widthN, double widthW, VertexFormat format) { - List quads = new ArrayList<>(); - float height = block.getHeight(); - TextureAtlasSprite sprite = block.getSprite(); - - Quad top = null; - Quad bottom = null; - Quad south = null; - Quad north = null; - Quad front = null; - - if (block.renderTop()) { - if (block.isFluid()) { - top = new Quad( //Top - new Vec3d(0.0, block.heightSW(), 1.0),//south west - new Vec3d(widthW, block.heightSE(), 1.0), //south east - new Vec3d(widthN, block.heightNE(), 0.0), //north east - new Vec3d(0, block.heightNW(), 0.0), //north west - sprite, format); - bottom = new Quad( //Bottom - new Vec3d(widthW, block.heightSW(), 1), //Bottom left - new Vec3d(0, block.heightNW(), 1), - new Vec3d(0, block.heightNE(), 0), - new Vec3d(widthN, block.heightSE(), 0), - sprite, format); - } else { - top = new Quad( //Top - new Vec3d(0.0, height, 1.0),//south west - new Vec3d(widthW, height, 1.0), //south east - new Vec3d(widthN, height, 0.0), //north east - new Vec3d(0, height, 0.0), //north west - sprite, format); - } - } - - if (block.renderBottom()) { - bottom = new Quad( //Bottom - new Vec3d(widthW, 0, 1), //Bottom left - new Vec3d(0, 0, 1), - new Vec3d(0, 0, 0), - new Vec3d(widthN, 0, 0), - sprite, format); - } - - if (block.renderFarMirrored()) { - south = new Quad( - new Vec3d(widthW, height, 1.0), (float) (16f*widthW), 16 - (float) (16f * height),//south west - new Vec3d(0, height, 1.0), 0, 16 - (float) (16f * height),//south east - new Vec3d(0, 0.0, 1.0), 0, 16,//north east - new Vec3d(widthW, 0.0, 1.0), (float) (16f*widthW), 16, //north west - sprite, format); - } - - if (block.renderNearMirrored()) { - north = new Quad( - new Vec3d(widthN, 0, 0), 16 - (float) (16f*widthN), 16,//south west - new Vec3d(0, 0, 0), 16, 16,//south east - new Vec3d(0, height, 0), 16, 16 - (float) (16f * height),//north east - new Vec3d(widthN, height, 0), 16 - (float) (16f*widthN), 16 - (float) (16f * height), //north west - sprite, format); - } - - if (block.renderDivision()) { - front = new Quad( //Front (long side) - new Vec3d(widthW, 0, 1.0), 0, 16,//south west - new Vec3d(widthN, 0, 0.0), 16, 16,//south east - new Vec3d(widthN, height, 0.0), 16, 16-height * 16f,//north east - new Vec3d(widthW, height, 1.0), 0, 16-height * 16f,//north west - sprite, format); - } - - quads.add(top); - quads.add(bottom); - quads.add(south); - quads.add(north); - quads.add(front); - - return quads; - } - - public static BufferedImage getImageFromGrid(String name, PaintGrid grid, int id) throws IOException { - BufferedImage image = new BufferedImage(grid.size(), grid.size(), BufferedImage.TYPE_INT_ARGB); - Color myWhite = new Color(255, 255, 255); // Color white - int rgb = myWhite.getRGB(); - for (int i = 0; i < grid.size(); i++ ){ - for (int j = 0; j < grid.size(); j++) { - if (grid.getGrid()[j][i]) { - image.setRGB(j, i, rgb); - } - } - } - - File outputfile = new File(name + "_" + id + ".png"); - ImageIO.write(image, "png", outputfile); - - return image; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/diagonal/UnlistedPropertyBlockPos.java b/src/main/java/com/silvaniastudios/roads/blocks/diagonal/UnlistedPropertyBlockPos.java deleted file mode 100644 index cb0896c1..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/diagonal/UnlistedPropertyBlockPos.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.silvaniastudios.roads.blocks.diagonal; - -import net.minecraft.util.math.BlockPos; -import net.minecraftforge.common.property.IUnlistedProperty; - -public class UnlistedPropertyBlockPos implements IUnlistedProperty { - - private final String name; - - public UnlistedPropertyBlockPos(String name) { - this.name = name; - } - - @Override - public String getName() { - return name; - } - - @Override - public boolean isValid(BlockPos val) { - return true; - } - - @Override - public Class getType() { - return BlockPos.class; - } - - @Override - public String valueToString(BlockPos val) { - return val.toString(); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/diagonal/UnlistedPropertySideBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/diagonal/UnlistedPropertySideBlock.java deleted file mode 100644 index 34843c7c..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/diagonal/UnlistedPropertySideBlock.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.silvaniastudios.roads.blocks.diagonal; - -import net.minecraft.block.state.IBlockState; -import net.minecraftforge.common.property.IUnlistedProperty; - -public class UnlistedPropertySideBlock implements IUnlistedProperty { - - private final String name; - - public UnlistedPropertySideBlock(String name) { - this.name = name; - } - - @Override - public String getName() { - return name; - } - - @Override - public boolean isValid(IBlockState val) { - return true; - } - - @Override - public Class getType() { - return IBlockState.class; - } - - @Override - public String valueToString(IBlockState val) { - return val.toString(); - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectArrows.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectArrows.java deleted file mode 100644 index da8c1964..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectArrows.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -import net.minecraft.util.IStringSerializable; - -public enum EnumConnectArrows implements IStringSerializable { - CONNECT_NONE(0, "none"), - CONNECT_LEFT(1, "connect_left"), - CONNECT_RIGHT (2, "connect_right"), - CONNECT_UP(3, "connect_up"), - CONNECT_LEFT_RIGHT (4, "connect_left_right"), - CONNECT_LEFT_UP (5, "connect_left_up"), - CONNECT_RIGHT_UP (6, "connect_right_up"), - CONNECT_LEFT_RIGHT_UP (7, "connect_left_right_up"), - CONNECT_LEFT_DIAGONAL (8, "connect_left_diagonal"), - CONNECT_RIGHT_DIAGONAL (9, "connect_right_diagonal"); - - - private static final EnumConnectArrows[] META_LOOKUP = new EnumConnectArrows[values().length]; - private final int meta; - private final String name; - - private EnumConnectArrows(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getMetadata() { - return this.meta; - } - - public static EnumConnectArrows byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumConnectArrows type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectDiagonal.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectDiagonal.java deleted file mode 100644 index 9ab9c8c8..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectDiagonal.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -import net.minecraft.util.IStringSerializable; - -public enum EnumConnectDiagonal implements IStringSerializable { - NONE(0, "none"), - NORTH_EAST(1, "north_east"), - NORTH_WEST(2, "north_west"), - SOUTH_EAST(3, "south_east"), - SOUTH_WEST(4, "south_west"); - - private static final EnumConnectDiagonal[] META_LOOKUP = new EnumConnectDiagonal[values().length]; - private final int meta; - private final String name; - - private EnumConnectDiagonal(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getMetadata() { - return this.meta; - } - - public static EnumConnectDiagonal byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumConnectDiagonal type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectDirectional.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectDirectional.java deleted file mode 100644 index e4d69b28..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectDirectional.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -import net.minecraft.util.IStringSerializable; - -public enum EnumConnectDirectional implements IStringSerializable { - CONNECT_NONE(0, "none"), - CONNECT_NORTH_LEFT_UP(1, "connect_north_left_up"), - CONNECT_NORTH_RIGHT_UP(2, "connect_north_right_up"), - CONNECT_NORTH_LEFT_DOWN(3, "connect_north_left_down"), - CONNECT_NORTH_RIGHT_DOWN(4, "connect_north_right_down"), - - CONNECT_EAST_LEFT_UP(5, "connect_east_left_up"), - CONNECT_EAST_RIGHT_UP(6, "connect_east_right_up"), - CONNECT_EAST_LEFT_DOWN(7, "connect_east_left_down"), - CONNECT_EAST_RIGHT_DOWN(8, "connect_east_right_down"), - - CONNECT_SOUTH_LEFT_UP(9, "connect_south_left_up"), - CONNECT_SOUTH_RIGHT_UP(10, "connect_south_right_up"), - CONNECT_SOUTH_LEFT_DOWN(11, "connect_south_left_down"), - CONNECT_SOUTH_RIGHT_DOWN(12, "connect_south_right_down"), - - CONNECT_WEST_LEFT_UP(13, "connect_west_left_up"), - CONNECT_WEST_RIGHT_UP(14, "connect_west_right_up"), - CONNECT_WEST_LEFT_DOWN(15, "connect_west_left_down"), - CONNECT_WEST_RIGHT_DOWN(16, "connect_west_right_down"); - - private static final EnumConnectDirectional[] META_LOOKUP = new EnumConnectDirectional[values().length]; - private final int meta; - private final String name; - - private EnumConnectDirectional(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getMetadata() { - return this.meta; - } - - public static EnumConnectDirectional byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumConnectDirectional type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectDirectional_FarSide.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectDirectional_FarSide.java deleted file mode 100644 index 8b0e6a9c..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectDirectional_FarSide.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -import net.minecraft.util.IStringSerializable; - -public enum EnumConnectDirectional_FarSide implements IStringSerializable { - CONNECT_NONE(0, "none"), - CONNECT_NORTH_LEFT_DOWN(1, "connect_north_left_down"), - CONNECT_NORTH_RIGHT_DOWN(2, "connect_north_right_down"), - - CONNECT_EAST_LEFT_DOWN(3, "connect_east_left_down"), - CONNECT_EAST_RIGHT_DOWN(4, "connect_east_right_down"), - - CONNECT_SOUTH_LEFT_DOWN(5, "connect_south_left_down"), - CONNECT_SOUTH_RIGHT_DOWN(6, "connect_south_right_down"), - - CONNECT_WEST_LEFT_DOWN(7, "connect_west_left_down"), - CONNECT_WEST_RIGHT_DOWN(8, "connect_west_right_down"); - - private static final EnumConnectDirectional_FarSide[] META_LOOKUP = new EnumConnectDirectional_FarSide[values().length]; - private final int meta; - private final String name; - - private EnumConnectDirectional_FarSide(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getMetadata() { - return this.meta; - } - - public static EnumConnectDirectional_FarSide byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumConnectDirectional_FarSide type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectJunctionChevron.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectJunctionChevron.java deleted file mode 100644 index 61ee73c2..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumConnectJunctionChevron.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -import net.minecraft.util.IStringSerializable; - -public enum EnumConnectJunctionChevron implements IStringSerializable { - NONE(0, "none"), - N_1(1, "n1"), - E_1(2, "e1"), - S_1(3, "s1"), - W_1(4, "w1"), - N_2(5, "n2"), - E_2(6, "e2"), - S_2(7, "s2"), - W_2(8, "w2"); - - private static final EnumConnectJunctionChevron[] META_LOOKUP = new EnumConnectJunctionChevron[values().length]; - private final int meta; - private final String name; - - private EnumConnectJunctionChevron(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getMetadata() { - return this.meta; - } - - public static EnumConnectJunctionChevron byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumConnectJunctionChevron type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumFourLengthConnectable.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumFourLengthConnectable.java deleted file mode 100644 index 4e31d977..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumFourLengthConnectable.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -import net.minecraft.util.IStringSerializable; - -public enum EnumFourLengthConnectable implements IStringSerializable { - NORTH_TOP(0, "north_top"), - NORTH_TOP_MID(1, "north_top_mid"), - NORTH_BOTTOM_MID(2, "north_bottom_mid"), - NORTH_BOTTOM(3, "north_bottom"), - - EAST_TOP(4, "east_top"), - EAST_TOP_MID(5, "east_top_mid"), - EAST_BOTTOM_MID(6, "east_bottom_mid"), - EAST_BOTTOM(7, "east_bottom"), - - SOUTH_TOP(8, "south_top"), - SOUTH_TOP_MID(9, "south_top_mid"), - SOUTH_BOTTOM_MID(10, "south_bottom_mid"), - SOUTH_BOTTOM(11, "south_bottom"), - - WEST_TOP(12, "west_top"), - WEST_TOP_MID(13, "west_top_mid"), - WEST_BOTTOM_MID(14, "west_bottom_mid"), - WEST_BOTTOM(15, "west_bottom"); - - private static final EnumFourLengthConnectable[] INDEX_LOOKUP = new EnumFourLengthConnectable[values().length]; - private final int index; - private final String name; - - private EnumFourLengthConnectable(int index, String name) { - this.index = index; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getIndex() { - return this.index; - } - - public static EnumFourLengthConnectable byMetadata(int meta) { - if (meta < 0 || meta >= INDEX_LOOKUP.length) { - meta = 0; - } - - return INDEX_LOOKUP[meta]; - } - - static { - for (EnumFourLengthConnectable type: values()) { - INDEX_LOOKUP[type.getIndex()] = type; - } - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumMeta.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumMeta.java deleted file mode 100644 index b3eda91f..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumMeta.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -import net.minecraft.util.IStringSerializable; - -public enum EnumMeta implements IStringSerializable { - id0(0, "0"), - id1(1, "1"), - id2(2, "2"), - id3(3, "3"), - id4(4, "4"), - id5(5, "5"), - id6(6, "6"), - id7(7, "7"), - id8(8, "8"), - id9(9, "9"), - id10(10, "10"), - id11(11, "11"), - id12(12, "12"), - id13(13, "13"), - id14(14, "14"), - id15(15, "15"); - - private static final EnumMeta[] META_LOOKUP = new EnumMeta[values().length]; - private final int meta; - private final String name; - - private EnumMeta(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getMetadata() { - return this.meta; - } - - public static EnumMeta byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - public static int getRotation(int meta) { - if (meta == 0 || meta == 4 || meta == 8 || meta == 12) { - return 0; - } - if (meta == 1 || meta == 5 || meta == 9 || meta == 13) { - return 270; - } - if (meta == 2 || meta == 6 || meta == 10 || meta == 14) { - return 180; - } - return 90; - } - - public int getRotation() { - if (meta == 0 || meta == 4 || meta == 8 || meta == 12) { - return 0; - } - if (meta == 1 || meta == 5 || meta == 9 || meta == 13) { - return 270; - } - if (meta == 2 || meta == 6 || meta == 10 || meta == 14) { - return 180; - } - return 90; - } - - static { - for (EnumMeta type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumRotatable.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumRotatable.java deleted file mode 100644 index db53903a..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumRotatable.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -import net.minecraft.util.IStringSerializable; - -public enum EnumRotatable implements IStringSerializable { - FLAT_NORTH(0, "flat_north"), - FLAT_EAST(1, "flat_east"), - FLAT_SOUTH(2, "flat_south"), - FLAT_WEST(3, "flat_west"), - FACE_NORTH(4, "face_north"), - FACE_EAST(5, "face_east"), - FACE_SOUTH(6, "face_south"), - FACE_WEST(7, "face_west"), - FLAT_NORTH_2(8, "flat_north_2"), - FLAT_EAST_2(9, "flat_east_2"), - FLAT_SOUTH_2(10, "flat_south_2"), - FLAT_WEST_2(11, "flat_west_2"), - FACE_NORTH_2(12, "face_north_2"), - FACE_EAST_2(13, "face_east_2"), - FACE_SOUTH_2(14, "face_south_2"), - FACE_WEST_2(15, "face_west_2"); - - private static final EnumRotatable[] ID_LOOKUP = new EnumRotatable[values().length]; - private final int meta; - private final String name; - - private EnumRotatable(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getMetadata() { - return this.meta; - } - - public static EnumRotatable byMetadata(int meta) { - if (meta < 0 || meta >= ID_LOOKUP.length) { - meta = 0; - } - - return ID_LOOKUP[meta]; - } - - static { - for (EnumRotatable type: values()) { - ID_LOOKUP[type.getMetadata()] = type; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumSimpleRotation.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumSimpleRotation.java deleted file mode 100644 index a166be77..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumSimpleRotation.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -import net.minecraft.util.IStringSerializable; - -public enum EnumSimpleRotation implements IStringSerializable { - NORTH(0, "north"), - EAST(1, "east"), - SOUTH(2, "south"), - WEST(3, "west"); - - private static final EnumSimpleRotation[] META_LOOKUP = new EnumSimpleRotation[values().length]; - private final int meta; - private final String name; - - private EnumSimpleRotation(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public int getMetadata() { - return this.meta; - } - - public static EnumSimpleRotation byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumSimpleRotation type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumThreeLengthConnectable.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumThreeLengthConnectable.java deleted file mode 100644 index 37710527..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumThreeLengthConnectable.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -import net.minecraft.util.IStringSerializable; - -public enum EnumThreeLengthConnectable implements IStringSerializable { - NORTH_BOTTOM(0, "north_bottom"), - EAST_BOTTOM(1, "east_bottom"), - SOUTH_BOTTOM(2, "south_bottom"), - WEST_BOTTOM(3, "west_bottom"), - - NORTH_MID(4, "north_mid"), - EAST_MID(5, "east_mid"), - SOUTH_MID(6, "south_mid"), - WEST_MID(7, "west_mid"), - - NORTH_TOP(8, "north_top"), - EAST_TOP(9, "east_top"), - SOUTH_TOP(10, "south_top"), - WEST_TOP(11, "west_top"); - - private static final EnumThreeLengthConnectable[] INDEX_LOOKUP = new EnumThreeLengthConnectable[values().length]; - private final int index; - private final String name; - - private EnumThreeLengthConnectable(int index, String name) { - this.index = index; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getIndex() { - return this.index; - } - - public static EnumThreeLengthConnectable byMetadata(int meta) { - if (meta < 0 || meta >= INDEX_LOOKUP.length) { - meta = 0; - } - - return INDEX_LOOKUP[meta]; - } - - static { - for (EnumThreeLengthConnectable type: values()) { - INDEX_LOOKUP[type.getIndex()] = type; - } - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumTwoLengthConnectable.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumTwoLengthConnectable.java deleted file mode 100644 index 6b2646fb..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/EnumTwoLengthConnectable.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -import net.minecraft.util.IStringSerializable; - -public enum EnumTwoLengthConnectable implements IStringSerializable { - n1(0, "n1"), - e1(1, "e1"), - s1(2, "s1"), - w1(3, "w1"), - n2(4, "n2"), - e2(5, "e2"), - s2(6, "s2"), - w2(7, "w2"); - - private static final EnumTwoLengthConnectable[] META_LOOKUP = new EnumTwoLengthConnectable[values().length]; - private final int meta; - private final String name; - - EnumTwoLengthConnectable(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public int getMetadata() { - return this.meta; - } - - public static EnumTwoLengthConnectable byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumTwoLengthConnectable type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/IConnectable.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/IConnectable.java deleted file mode 100644 index 581427d9..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/IConnectable.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -public interface IConnectable { - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/IMetaBlockName.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/IMetaBlockName.java deleted file mode 100644 index 95a8920f..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/IMetaBlockName.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -import net.minecraft.item.ItemStack; - -public interface IMetaBlockName { - - String getSpecialName(ItemStack stack); - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/enums/IPostConnectable.java b/src/main/java/com/silvaniastudios/roads/blocks/enums/IPostConnectable.java deleted file mode 100644 index 8fcdf6a2..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/enums/IPostConnectable.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.silvaniastudios.roads.blocks.enums; - -public interface IPostConnectable { - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/ArrowDiagonalPaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/ArrowDiagonalPaintBlock.java deleted file mode 100644 index 0c65b7ec..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/ArrowDiagonalPaintBlock.java +++ /dev/null @@ -1,122 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class ArrowDiagonalPaintBlock extends PaintBlockBase implements IMetaBlockName { - - public static final PropertyEnum META_ID = PropertyEnum.create("meta", ArrowDiagonalPaintBlock.EnumDiagonalArrow.class); - - public ArrowDiagonalPaintBlock(String name, String category, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, category, coreMetas, dynamic, colour); - setDefaultState(this.blockState.getBaseState().withProperty(META_ID, ArrowDiagonalPaintBlock.EnumDiagonalArrow.id0)); - this.setCreativeTab(FurenikusRoads.tab_paint_icons); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(META_ID, ArrowDiagonalPaintBlock.EnumDiagonalArrow.byMetadata(meta)); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(META_ID, ArrowDiagonalPaintBlock.EnumDiagonalArrow.byMetadata(meta + 1)); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(META_ID, ArrowDiagonalPaintBlock.EnumDiagonalArrow.byMetadata(meta + 2)); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(META_ID, ArrowDiagonalPaintBlock.EnumDiagonalArrow.byMetadata(meta + 3)); } - - return this.getDefaultState().withProperty(META_ID, ArrowDiagonalPaintBlock.EnumDiagonalArrow.byMetadata(meta)); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {META_ID}); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(META_ID, ArrowDiagonalPaintBlock.EnumDiagonalArrow.byMetadata(meta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((ArrowDiagonalPaintBlock.EnumDiagonalArrow)state.getValue(META_ID)).getMetadata(); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs tab, NonNullList items) { - items.add(new ItemStack(this, 1, 0)); - items.add(new ItemStack(this, 1, 4)); - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 4, new ModelResourceLocation(getRegistryName(), "inventory_2")); - } - - public static enum EnumDiagonalArrow implements IStringSerializable { - id0(0, "0"), - id1(1, "1"), - id2(2, "2"), - id3(3, "3"), - id4(4, "4"), - id5(5, "5"), - id6(6, "6"), - id7(7, "7"); - - private static final EnumDiagonalArrow[] META_LOOKUP = new EnumDiagonalArrow[values().length]; - private final int meta; - private final String name; - - private EnumDiagonalArrow(int meta, String name) { - this.meta = meta; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public int getMetadata() { - return this.meta; - } - - public static EnumDiagonalArrow byMetadata(int meta) { - if (meta < 0 || meta >= META_LOOKUP.length) { - meta = 0; - } - - return META_LOOKUP[meta]; - } - - static { - for (EnumDiagonalArrow type: values()) { - META_LOOKUP[type.getMetadata()] = type; - } - } - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/ArrowLinePaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/ArrowLinePaintBlock.java deleted file mode 100644 index af948b43..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/ArrowLinePaintBlock.java +++ /dev/null @@ -1,155 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumConnectArrows; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyDirection; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class ArrowLinePaintBlock extends PaintBlockBase implements IMetaBlockName { - - //Direction is rotation of the block, not the actual direction to connect in. - public static final PropertyEnum CONNECT = PropertyEnum.create("connect", EnumConnectArrows.class); - public static final PropertyDirection FACING = PropertyDirection.create("facing", EnumFacing.Plane.HORIZONTAL); - - public ArrowLinePaintBlock(String name, String category, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, category, coreMetas, dynamic, colour); - this.setCreativeTab(FurenikusRoads.tab_paint_icons); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(CONNECT, EnumConnectArrows.CONNECT_NONE) - .withProperty(FACING, EnumFacing.NORTH)); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - return this.getDefaultState().withProperty(FACING, placer.getHorizontalFacing()); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumFacing)state.getValue(FACING)).getIndex(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - EnumFacing enumfacing = EnumFacing.getFront(meta); - if (enumfacing == EnumFacing.DOWN || enumfacing == EnumFacing.UP) { - return this.getDefaultState().withProperty(FACING, EnumFacing.NORTH); - } - return this.getDefaultState().withProperty(FACING, enumfacing); - } - - private EnumConnectArrows canLineConnectTo(IBlockAccess world, BlockPos pos) { - IBlockState state = world.getBlockState(pos); - - IBlockState stateNorth = world.getBlockState(pos.offset(EnumFacing.NORTH)); - IBlockState stateEast = world.getBlockState(pos.offset(EnumFacing.EAST)); - IBlockState stateSouth = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - IBlockState stateWest = world.getBlockState(pos.offset(EnumFacing.WEST)); - - BlockPos posNorth = pos.offset(EnumFacing.NORTH); - BlockPos posSouth = pos.offset(EnumFacing.SOUTH); - - boolean blockNorth = stateNorth.getBlock() instanceof ArrowPaintBlock || stateNorth.getBlock() instanceof ArrowLinePaintBlock; - boolean blockEast = stateEast.getBlock() instanceof ArrowPaintBlock || stateEast.getBlock() instanceof ArrowLinePaintBlock; - boolean blockSouth = stateSouth.getBlock() instanceof ArrowPaintBlock || stateSouth.getBlock() instanceof ArrowLinePaintBlock; - boolean blockWest = stateWest.getBlock() instanceof ArrowPaintBlock || stateWest.getBlock() instanceof ArrowLinePaintBlock; - - boolean blockNorthEast = world.getBlockState(posNorth.offset(EnumFacing.EAST)).getBlock() instanceof ArrowDiagonalPaintBlock; - boolean blockNorthWest = world.getBlockState(posNorth.offset(EnumFacing.WEST)).getBlock() instanceof ArrowDiagonalPaintBlock; - boolean blockSouthEast = world.getBlockState(posSouth.offset(EnumFacing.EAST)).getBlock() instanceof ArrowDiagonalPaintBlock; - boolean blockSouthWest = world.getBlockState(posSouth.offset(EnumFacing.WEST)).getBlock() instanceof ArrowDiagonalPaintBlock; - - boolean blockUp = false; - boolean blockLeft = false; - boolean blockRight = false; - - boolean blockUpLeft = false; - boolean blockUpRight = false; - - if (getMetaFromState(state) == 2) { - blockUp = blockNorth; - blockLeft = blockWest; - blockRight = blockEast; - - blockUpLeft = blockNorthWest; - blockUpRight = blockNorthEast; - } - - if (getMetaFromState(state) == 5) { - blockUp = blockEast; - blockLeft = blockNorth; - blockRight = blockSouth; - - blockUpLeft = blockNorthEast; - blockUpRight = blockSouthEast; - } - - if (getMetaFromState(state) == 3) { - blockUp = blockSouth; - blockLeft = blockEast; - blockRight = blockWest; - - blockUpLeft = blockSouthEast; - blockUpRight = blockSouthWest; - } - - if (getMetaFromState(state) == 4) { - blockUp = blockWest; - blockLeft = blockSouth; - blockRight = blockNorth; - - blockUpLeft = blockSouthWest; - blockUpRight = blockNorthWest; - } - - if (blockUpLeft) { return EnumConnectArrows.CONNECT_LEFT_DIAGONAL; } - if (blockUpRight) { return EnumConnectArrows.CONNECT_RIGHT_DIAGONAL; } - - if (blockUp && blockRight && blockLeft) { return EnumConnectArrows.CONNECT_LEFT_RIGHT_UP; } - if (blockUp && blockRight && !blockLeft) { return EnumConnectArrows.CONNECT_RIGHT_UP; } - if (blockUp && !blockRight && blockLeft) { return EnumConnectArrows.CONNECT_LEFT_UP; } - if (!blockUp && blockRight && blockLeft) { return EnumConnectArrows.CONNECT_LEFT_RIGHT; } - if (!blockUp && !blockRight && blockLeft) { return EnumConnectArrows.CONNECT_LEFT; } - if (!blockUp && blockRight && !blockLeft) { return EnumConnectArrows.CONNECT_RIGHT; } - if (blockUp && !blockRight && !blockLeft) { return EnumConnectArrows.CONNECT_UP; } - - return EnumConnectArrows.CONNECT_NONE; - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {CONNECT, FACING}); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state.withProperty(CONNECT, canLineConnectTo(worldIn, pos)); - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/ArrowPaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/ArrowPaintBlock.java deleted file mode 100644 index 282693ca..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/ArrowPaintBlock.java +++ /dev/null @@ -1,131 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class ArrowPaintBlock extends PaintBlockBase implements IMetaBlockName { - - public static final PropertyEnum META_ID = PropertyEnum.create("meta", EnumMeta.class); - //Meta 0-3 normal arrow, 4-7 side arrow, 8-11 vertical left, 12-15 vertical right. - - public ArrowPaintBlock(String name, String category, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, category, coreMetas, dynamic, colour); - setDefaultState(this.blockState.getBaseState().withProperty(META_ID, EnumMeta.id0)); - this.setCreativeTab(FurenikusRoads.tab_paint_icons); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - if (meta < 4) { - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id0); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id1); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id2); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id3); } - } else if (facing == EnumFacing.UP) { - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id4); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id5); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id6); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id7); } - } else { - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { - if (facing == EnumFacing.EAST) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id13); } - if (facing == EnumFacing.WEST) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id11); } - } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { - if (facing == EnumFacing.NORTH) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id9); } - if (facing == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id14); } - } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { - if (facing == EnumFacing.EAST) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id10); } - if (facing == EnumFacing.WEST) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id12); } - } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { - if (facing == EnumFacing.NORTH) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id8); } - if (facing == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(META_ID, EnumMeta.id15); } - } - } - - return super.getStateForPlacement(world, pos, facing, hitX, hitY, hitZ, meta, placer, hand); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {META_ID}); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumMeta)state.getValue(META_ID)).getMetadata(); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs tab, NonNullList items) { - items.add(new ItemStack(this, 1, 0)); - items.add(new ItemStack(this, 1, 4)); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { - int meta = getMetaFromState(state); - if (meta < 8) { - return new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(source, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(source, pos)+0.0625, 1.0D); - } - if (meta == 8 || meta == 12) { return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 1.0D, 0.0625D); } - if (meta == 9 || meta == 13) { return new AxisAlignedBB(0.9375D, 0.0D, 0.0D, 1.0D, 1.0D, 1.0D); } - if (meta == 10 || meta == 14) { return new AxisAlignedBB(0.0D, 0.0D, 0.9375D, 1.0D, 1.0D, 1.0D); } - if (meta == 11 || meta == 15) { return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 0.0625D, 1.0D, 1.0D); } - - return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.0625, 1.0D); - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - double offset = 0.0; - if (meta < 8) { - offset = 1.0 - getBlockBelowHeight(worldIn, pos); - } - return new Vec3d(0, -offset, 0); - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 4, new ModelResourceLocation(getRegistryName(), "inventory_2")); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronMidPaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronMidPaintBlock.java deleted file mode 100644 index 34c733a8..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronMidPaintBlock.java +++ /dev/null @@ -1,159 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; - -import com.silvaniastudios.roads.blocks.paint.customs.Custom1x4PaintBlock; -import net.minecraft.block.Block; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class ChevronMidPaintBlock extends PaintBlockBase { - - public static final PropertyEnum META_ID = PropertyEnum.create("meta", EnumMeta.class); - public boolean fourType = false; - - public ChevronMidPaintBlock(String name, boolean fourType, String category, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, category, coreMetas, dynamic, colour); - this.fourType = fourType; - this.setDefaultState(this.blockState.getBaseState().withProperty(META_ID, EnumMeta.id0)); - this.setCreativeTab(FurenikusRoads.tab_paint_junction); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - if (meta > 7 && fourType) { - if (placer.getHorizontalFacing().equals(EnumFacing.NORTH)) { return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta)); } - if (placer.getHorizontalFacing().equals(EnumFacing.EAST)) { return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta + 1)); } - if (placer.getHorizontalFacing().equals(EnumFacing.SOUTH)) { return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta + 2)); } - if (placer.getHorizontalFacing().equals(EnumFacing.WEST)) { return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta + 3)); } - } - - IBlockState stateNorth = world.getBlockState(pos.offset(EnumFacing.NORTH)); - IBlockState stateEast = world.getBlockState(pos.offset(EnumFacing.EAST)); - IBlockState stateSouth = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - IBlockState stateWest = world.getBlockState(pos.offset(EnumFacing.WEST)); - - IBlockState stateLeft = null; - IBlockState stateRight = null; - IBlockState stateUp = null; - IBlockState stateDown = null; - - int rot = 0; - - if (placer.getHorizontalFacing().equals(EnumFacing.NORTH)) { - stateLeft = stateWest; - stateRight = stateEast; - stateUp = stateNorth; - stateDown = stateSouth; - rot = 0; - } - - if (placer.getHorizontalFacing().equals(EnumFacing.EAST)) { - stateLeft = stateNorth; - stateRight = stateSouth; - stateUp = stateEast; - stateDown = stateWest; - rot = 1; - } - - if (placer.getHorizontalFacing().equals(EnumFacing.SOUTH)) { - stateLeft = stateEast; - stateRight = stateWest; - stateUp = stateSouth; - stateDown = stateNorth; - rot = 2; - } - - if (placer.getHorizontalFacing().equals(EnumFacing.WEST)) { - stateLeft = stateSouth; - stateRight = stateNorth; - stateUp = stateWest; - stateDown = stateEast; - rot = 3; - } - - Block blockLeft = stateLeft.getBlock(); - Block blockRight = stateRight.getBlock(); - Block blockUp = stateUp.getBlock(); - Block blockDown = stateDown.getBlock(); - - if (blockUp.getRegistryName().equals(this.getRegistryName())) { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(blockUp.getMetaFromState(stateUp))); - } else if (blockDown.getRegistryName().equals(this.getRegistryName())) { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(blockDown.getMetaFromState(stateDown))); - } else if (blockLeft instanceof Custom1x4PaintBlock || blockLeft instanceof ChevronSidePaintBlock) { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(placeMeta(blockLeft, rot, stateLeft))); - } else if (blockRight instanceof Custom1x4PaintBlock || blockRight instanceof ChevronSidePaintBlock) { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(placeMeta(blockRight, rot, stateRight))); - } else { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta+rot)); - } - } - - public int placeMeta(Block block, int meta, IBlockState state) { - if (block instanceof Custom1x4PaintBlock) { - return meta + 4; - } - - if (block instanceof ChevronSidePaintBlock) { - ChevronSidePaintBlock b = (ChevronSidePaintBlock) block; - int bMeta = b.getMetaFromState(state); - if (bMeta < 4 || (bMeta > 7 && bMeta < 12)) { - return meta + 4; - } else { - return meta; - } - } - return meta; - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs creativeTabs, NonNullList list) { - list.add(new ItemStack(this, 1, 0)); - list.add(new ItemStack(this, 1, 4)); - list.add(new ItemStack(this, 1, 8)); - list.add(new ItemStack(this, 1, 12)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumMeta)state.getValue(META_ID)).getMetadata(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta)); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {META_ID}); - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 4, new ModelResourceLocation(getRegistryName(), "inventory_2")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 8, new ModelResourceLocation(getRegistryName(), "inventory_3")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 12, new ModelResourceLocation(getRegistryName(), "inventory_4")); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronPaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronPaintBlock.java deleted file mode 100644 index d4a8db97..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronPaintBlock.java +++ /dev/null @@ -1,334 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import java.util.ArrayList; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.PaintColour; - -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; -import net.minecraft.block.Block; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.BlockRenderLayer; -import net.minecraft.util.EnumBlockRenderType; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.NonNullList; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class ChevronPaintBlock extends PaintBlockBase implements IMetaBlockName { - - public static final PropertyEnum META_ID = PropertyEnum.create("rotation", EnumType.class); - public static final PropertyEnum TYPE = PropertyEnum.create("connect", EnumJunctionConnections.class); - public static final PropertyBool EDGE = PropertyBool.create("edge"); - public static final PropertyBool HIDE = PropertyBool.create("hide"); - - public ChevronPaintBlock(String name, EnumJunctionConnections type, boolean aType, String category, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, category, coreMetas, dynamic, colour); - this.setDefaultState(this.blockState.getBaseState().withProperty(META_ID, EnumType.NORTH).withProperty(TYPE, type).withProperty(EDGE, false).withProperty(HIDE, false)); - if (!aType) { this.setCreativeTab(null); } else { this.setCreativeTab(FurenikusRoads.tab_paint_junction); } - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - IBlockState stateNorth = world.getBlockState(pos.offset(EnumFacing.NORTH)); - IBlockState stateEast = world.getBlockState(pos.offset(EnumFacing.EAST)); - IBlockState stateSouth = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - IBlockState stateWest = world.getBlockState(pos.offset(EnumFacing.WEST)); - - IBlockState stateLeft = null; - IBlockState stateRight = null; - IBlockState stateUp = null; - IBlockState stateDown = null; - - int rot = 0; - - if (placer.getHorizontalFacing().equals(EnumFacing.NORTH)) { - stateLeft = stateWest; - stateRight = stateEast; - stateUp = stateNorth; - stateDown = stateSouth; - rot = 0; - } - - if (placer.getHorizontalFacing().equals(EnumFacing.EAST)) { - stateLeft = stateNorth; - stateRight = stateSouth; - stateUp = stateEast; - stateDown = stateWest; - rot = 1; - } - - if (placer.getHorizontalFacing().equals(EnumFacing.SOUTH)) { - stateLeft = stateEast; - stateRight = stateWest; - stateUp = stateSouth; - stateDown = stateNorth; - rot = 2; - } - - if (placer.getHorizontalFacing().equals(EnumFacing.WEST)) { - stateLeft = stateSouth; - stateRight = stateNorth; - stateUp = stateWest; - stateDown = stateEast; - rot = 3; - } - - ArrayList chevronALeft = new ArrayList(); - ArrayList chevronARight = new ArrayList(); - ArrayList chevronBLeft = new ArrayList(); - ArrayList chevronBRight = new ArrayList(); - - for (int i = 0; i < FRBlocks.col.size(); i++) { - chevronALeft.add((ChevronPaintBlock) Block.REGISTRY.getObject(new ResourceLocation(FurenikusRoads.MODID, FRBlocks.col.get(i).getName() + "_chevron_left_a"))); - chevronALeft.add((ChevronPaintBlock) Block.REGISTRY.getObject(new ResourceLocation(FurenikusRoads.MODID, FRBlocks.col.get(i).getName() + "_chevron_left_a_thin"))); - chevronARight.add((ChevronPaintBlock) Block.REGISTRY.getObject(new ResourceLocation(FurenikusRoads.MODID, FRBlocks.col.get(i).getName() + "_chevron_right_a"))); - chevronARight.add((ChevronPaintBlock) Block.REGISTRY.getObject(new ResourceLocation(FurenikusRoads.MODID, FRBlocks.col.get(i).getName() + "_chevron_right_a_thin"))); - - chevronBLeft.add((ChevronPaintBlock) Block.REGISTRY.getObject(new ResourceLocation(FurenikusRoads.MODID, FRBlocks.col.get(i).getName() + "_chevron_left_b"))); - chevronBLeft.add((ChevronPaintBlock) Block.REGISTRY.getObject(new ResourceLocation(FurenikusRoads.MODID, FRBlocks.col.get(i).getName() + "_chevron_left_b_thin"))); - chevronBRight.add((ChevronPaintBlock) Block.REGISTRY.getObject(new ResourceLocation(FurenikusRoads.MODID, FRBlocks.col.get(i).getName() + "_chevron_right_b"))); - chevronBRight.add((ChevronPaintBlock) Block.REGISTRY.getObject(new ResourceLocation(FurenikusRoads.MODID, FRBlocks.col.get(i).getName() + "_chevron_right_b_thin"))); - } - - for (int i = 0; i < chevronALeft.size(); i++) { - //If we are placing left, and left is null, and right is right, then place left to match right. (ok read this comment like 2 years later and wtf fureniku this makes no sense) - if (chevronALeft.contains(this) || chevronBLeft.contains(this)) { - if (!(stateLeft.getBlock() instanceof ChevronPaintBlock)) { - if (chevronARight.contains(stateRight.getBlock())) { - return chevronALeft.get(chevronARight.indexOf(stateRight.getBlock())).getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } else if (chevronBRight.contains(stateRight.getBlock())) { - return chevronBLeft.get(chevronBRight.indexOf(stateRight.getBlock())).getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } - } - } - //Like above but right instead - if (chevronARight.contains(this) || chevronBRight.contains(this)) { - if (!(stateRight.getBlock() instanceof ChevronPaintBlock)) { - if (chevronALeft.contains(stateLeft.getBlock())) { - return chevronARight.get(chevronALeft.indexOf(stateLeft.getBlock())).getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } else if (chevronBLeft.contains(stateLeft.getBlock())) { - return chevronBRight.get(chevronBLeft.indexOf(stateLeft.getBlock())).getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } - } - } - //If those aren't the case, then connect as normal to surrounding blocks - if (this.equals(chevronALeft.get(i)) || this.equals(chevronBLeft.get(i))) { - if (stateLeft.getBlock().equals(chevronALeft.get(i)) || stateRight.getBlock().equals(chevronALeft.get(i))) { - return chevronBLeft.get(i).getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } - if (stateLeft.getBlock().equals(chevronBLeft.get(i)) || stateRight.getBlock().equals(chevronBLeft.get(i))) { - return chevronALeft.get(i).getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } - - if (stateUp.getBlock().equals(chevronALeft.get(i)) || stateDown.getBlock().equals(chevronALeft.get(i))) { - return chevronALeft.get(i).getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } - if (stateUp.getBlock().equals(chevronBLeft.get(i)) || stateDown.getBlock().equals(chevronBLeft.get(i))) { - return chevronBLeft.get(i).getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } - } - - if (this.equals(chevronARight.get(i)) || this.equals(chevronBRight.get(i))) { - if (stateLeft.getBlock().equals(chevronARight.get(i)) || stateRight.getBlock().equals(chevronARight.get(i))) { - return chevronBRight.get(i).getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } - if (stateLeft.getBlock().equals(chevronBRight.get(i)) || stateRight.getBlock().equals(chevronBRight.get(i))) { - return chevronARight.get(i).getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } - - if (stateUp.getBlock().equals(chevronARight.get(i)) || stateDown.getBlock().equals(chevronARight.get(i))) { - return chevronARight.get(i).getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } - if (stateUp.getBlock().equals(chevronBRight.get(i)) || stateDown.getBlock().equals(chevronBRight.get(i))) { - return chevronBRight.get(i).getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } - } - } - - return this.getDefaultState().withProperty(META_ID, EnumType.byId(rot)); - } - - public int placeMeta(int meta, IBlockState state) { - if (state.getBlock() instanceof ChevronPaintBlock) { - int sideMeta = state.getBlock().getMetaFromState(state); - if (sideMeta > 3) { - return meta; - } else { - return meta + 4; - } - } - return meta; - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs creativeTabs, NonNullList list) { - list.add(new ItemStack(this, 1, 0)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumType)state.getValue(META_ID)).getId(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(META_ID, EnumType.byId(meta)); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {META_ID, TYPE, EDGE, HIDE}); - } - - @Override - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state.withProperty(EDGE, connectToLine(state, worldIn, pos)).withProperty(HIDE, shouldHide(state, worldIn, pos)); - } - - private boolean shouldHide(IBlockState state, IBlockAccess world, BlockPos pos) { - if (world.getBlockState(pos.offset(EnumFacing.UP)).getBlock() instanceof JunctionFilterLinePaintBlock - || world.getBlockState(pos.offset(EnumFacing.DOWN)).getBlock() instanceof JunctionFilterLinePaintBlock) { - return true; - } - return false; - } - - private boolean connectToLine(IBlockState state, IBlockAccess world, BlockPos pos) { - int meta = getMetaFromState(state); - if (meta == 0) { return isBottomSection(world.getBlockState( pos.west())) || isBottomSection(world.getBlockState( pos.east())); } - if (meta == 1) { return isBottomSection(world.getBlockState(pos.north())) || isBottomSection(world.getBlockState(pos.south())); } - if (meta == 2) { return isBottomSection(world.getBlockState( pos.east())) || isBottomSection(world.getBlockState( pos.west())); } - if (meta == 3) { return isBottomSection(world.getBlockState(pos.south())) || isBottomSection(world.getBlockState(pos.north())); } - - return false; - } - - private boolean isBottomSection(IBlockState state) { - if (state.getBlock() instanceof JunctionFilterLinePaintBlock) { - JunctionFilterLinePaintBlock block = (JunctionFilterLinePaintBlock) state.getBlock(); - int meta = block.getMetaFromState(state); - if (meta == 3 || meta == 7 || meta == 11 || meta == 15) { return true; } - } - return false; - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - } - - @Override - public EnumBlockRenderType getRenderType(IBlockState state) { - return EnumBlockRenderType.MODEL; - } - - @Override - public BlockRenderLayer getBlockLayer() { - return BlockRenderLayer.CUTOUT; - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - public static enum EnumType implements IStringSerializable { - //up = left side low, right side up. down = left side up, right side down. - NORTH(0, "north"), - EAST (1, "east"), - SOUTH(2, "south"), - WEST (3, "west"); - - private static final EnumType[] ID_LOOKUP = new EnumType[values().length]; - private final int id; - private final String name; - - private EnumType(int id, String name) { - this.id = id; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public int getId() { - return this.id; - } - - public static EnumType byId(int id) { - if (id < 0 || id >= ID_LOOKUP.length) { - id = 0; - } - - return ID_LOOKUP[id]; - } - - static { - for (EnumType type: values()) { - ID_LOOKUP[type.getId()] = type; - } - } - } - - public static enum EnumJunctionConnections implements IStringSerializable { - NONE(0, "none"), - CHEVRON_A(1, "chevron_a"), - CHEVRON_B(2, "chevron_b"), - CHEVRON_THIN_A(3, "chevron_thin_a"), - CHEVRON_THIN_B(4, "chevron_thin_b"); - - private static final EnumJunctionConnections[] ID_LOOKUP = new EnumJunctionConnections[values().length]; - private final int id; - private final String name; - - private EnumJunctionConnections(int id, String name) { - this.id = id; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public int getId() { - return this.id; - } - - public static EnumJunctionConnections byId(int id) { - if (id < 0 || id >= ID_LOOKUP.length) { - id = 0; - } - - return ID_LOOKUP[id]; - } - - static { - for (EnumJunctionConnections type: values()) { - ID_LOOKUP[type.getId()] = type; - } - } - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronSideLinePaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronSideLinePaintBlock.java deleted file mode 100644 index d18b99ea..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronSideLinePaintBlock.java +++ /dev/null @@ -1,281 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; - -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.BlockRenderLayer; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class ChevronSideLinePaintBlock extends PaintBlockBase implements IMetaBlockName { - - public static final PropertyEnum TYPE_ROT = PropertyEnum.create("type_rotation", EnumTypeRotation.class); - public static final PropertyEnum CONNECT = PropertyEnum.create("connect", EnumConnections.class); - - public ChevronSideLinePaintBlock(String name, String category, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, category, coreMetas, dynamic, colour); - this.setDefaultState(this.blockState.getBaseState().withProperty(TYPE_ROT, EnumTypeRotation.DOWN_N_A).withProperty(CONNECT, EnumConnections.NONE)); - this.setCreativeTab(FurenikusRoads.tab_paint_junction); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - EnumFacing placerFacing = placer.getHorizontalFacing(); - int placeMeta = 0; - - IBlockState northBlock = world.getBlockState(pos.offset(EnumFacing.NORTH)); - IBlockState eastBlock = world.getBlockState(pos.offset(EnumFacing.EAST)); - IBlockState southBlock = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - IBlockState westBlock = world.getBlockState(pos.offset(EnumFacing.WEST)); - - IBlockState upBlock = null; - IBlockState leftBlock = null; - IBlockState rightBlock = null; - IBlockState downBlock = null; - - int leftMeta = -1; - int rightMeta = -1; - - if (placerFacing.equals(EnumFacing.NORTH)) { - upBlock = northBlock; - leftBlock = westBlock; - rightBlock = eastBlock; - downBlock = southBlock; - } - - if (placerFacing.equals(EnumFacing.EAST)) { - placeMeta = 1; - upBlock = eastBlock; - leftBlock = northBlock; - rightBlock = southBlock; - downBlock = westBlock; - } - - if (placerFacing.equals(EnumFacing.SOUTH)) { - placeMeta = 2; - upBlock = southBlock; - leftBlock = eastBlock; - rightBlock = westBlock; - downBlock = northBlock; - } - - if (placerFacing.equals(EnumFacing.WEST)) { - placeMeta = 3; - upBlock = westBlock; - leftBlock = southBlock; - rightBlock = northBlock; - downBlock = eastBlock; - } - - if (leftBlock.getBlock() instanceof ChevronSideLinePaintBlock) { - leftMeta = leftBlock.getBlock().getMetaFromState(leftBlock); - - if (leftMeta < 4 || (leftMeta > 7 && leftMeta < 12)) { - return this.getDefaultState().withProperty(TYPE_ROT, EnumTypeRotation.byMetadata(leftMeta + 4)); - } else { - return this.getDefaultState().withProperty(TYPE_ROT, EnumTypeRotation.byMetadata(leftMeta - 4)); - } - } else if (rightBlock.getBlock() instanceof ChevronSideLinePaintBlock) { - rightMeta = rightBlock.getBlock().getMetaFromState(rightBlock); - - if (rightMeta < 4 || (rightMeta > 7 && rightMeta < 12)) { - return this.getDefaultState().withProperty(TYPE_ROT, EnumTypeRotation.byMetadata(rightMeta + 4)); - } else { - return this.getDefaultState().withProperty(TYPE_ROT, EnumTypeRotation.byMetadata(rightMeta - 4)); - } - } else if (upBlock.getBlock() instanceof ChevronSideLinePaintBlock) { return this.getDefaultState().withProperty(TYPE_ROT, EnumTypeRotation.byMetadata(upBlock.getBlock().getMetaFromState(upBlock))); - } else if (downBlock.getBlock() instanceof ChevronSideLinePaintBlock) { return this.getDefaultState().withProperty(TYPE_ROT, EnumTypeRotation.byMetadata(downBlock.getBlock().getMetaFromState(downBlock))); } - - return this.getDefaultState().withProperty(TYPE_ROT, EnumTypeRotation.byMetadata(placeMeta)); //TODO - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumTypeRotation)state.getValue(TYPE_ROT)).getIndex(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(TYPE_ROT, EnumTypeRotation.byMetadata(meta)); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {TYPE_ROT, CONNECT}); - } - - @Override - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state.withProperty(CONNECT, connectSide(worldIn, pos)); - } - - @SideOnly(Side.CLIENT) - public BlockRenderLayer getBlockLayer() { - return BlockRenderLayer.CUTOUT_MIPPED; - } - - private EnumConnections connectSide(IBlockAccess world, BlockPos pos) { - IBlockState state = world.getBlockState(pos); - int meta = getMetaFromState(state); - - boolean blockNorth = world.getBlockState(pos.offset(EnumFacing.NORTH)).getBlock() instanceof ChevronSideLinePaintBlock; - boolean blockEast = world.getBlockState(pos.offset(EnumFacing.EAST)) .getBlock() instanceof ChevronSideLinePaintBlock; - boolean blockSouth = world.getBlockState(pos.offset(EnumFacing.SOUTH)).getBlock() instanceof ChevronSideLinePaintBlock; - boolean blockWest = world.getBlockState(pos.offset(EnumFacing.WEST)) .getBlock() instanceof ChevronSideLinePaintBlock; - - boolean blockLeft = false; - boolean blockRight = false; - - //north - if (meta == 0 || meta == 4 || meta == 8 || meta == 12) { - if (blockEast) { blockRight = true; } - if (blockWest) { blockLeft = true; } - } - //east - if (meta == 1 || meta == 5 || meta == 9 || meta == 13) { - if (blockSouth) { blockRight = true; } - if (blockNorth) { blockLeft = true; } - } - //south - if (meta == 2 || meta == 6 || meta == 10 || meta == 14) { - if (blockWest) { blockRight = true; } - if (blockEast) { blockLeft = true; } - } - //west - if (meta == 3 || meta == 7 || meta == 11 || meta == 15) { - if (blockNorth) { blockRight = true; } - if (blockSouth) { blockLeft = true; } - } - - if (!blockLeft && blockRight) { return EnumConnections.LINE_LEFT; } - if ( blockLeft && !blockRight) { return EnumConnections.LINE_RIGHT; } - if (!blockLeft && !blockRight) { return EnumConnections.LINE_BOTH; } - - return EnumConnections.NONE; - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - public static enum EnumConnections implements IStringSerializable { - NONE(0, "none"), - LINE_LEFT (1, "line_left"), - LINE_RIGHT(2, "line_right"), - LINE_BOTH(3, "line_both"); - - private static final EnumConnections[] ID_LOOKUP = new EnumConnections[values().length]; - private final int id; - private final String name; - - private EnumConnections(int id, String name) { - this.id = id; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public int getId() { - return this.id; - } - - public static EnumConnections byId(int id) { - if (id < 0 || id >= ID_LOOKUP.length) { - id = 0; - } - - return ID_LOOKUP[id]; - } - - static { - for (EnumConnections type: values()) { - ID_LOOKUP[type.getId()] = type; - } - } - } - - public static enum EnumTypeRotation implements IStringSerializable { - DOWN_N_A(0, "down_n_a"), - DOWN_E_A(1, "down_e_a"), - DOWN_S_A(2, "down_s_a"), - DOWN_W_A(3, "down_w_a"), - - DOWN_N_B(4, "down_n_b"), - DOWN_E_B(5, "down_e_b"), - DOWN_S_B(6, "down_s_b"), - DOWN_W_B(7, "down_w_b"), - - UP_N_A(8, "up_n_a"), - UP_E_A(9, "up_e_a"), - UP_S_A(10, "up_s_a"), - UP_W_A(11, "up_w_a"), - - UP_N_B(12, "up_n_b"), - UP_E_B(13, "up_e_b"), - UP_S_B(14, "up_s_b"), - UP_W_B(15, "up_w_b"); - - private static final EnumTypeRotation[] INDEX_LOOKUP = new EnumTypeRotation[values().length]; - private final int index; - private final String name; - - private EnumTypeRotation(int index, String name) { - this.index = index; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - @Override - public String toString() { - return getName(); - } - - public int getIndex() { - return this.index; - } - - public static EnumTypeRotation byMetadata(int meta) { - if (meta < 0 || meta >= INDEX_LOOKUP.length) { - meta = 0; - } - - return INDEX_LOOKUP[meta]; - } - - static { - for (EnumTypeRotation type: values()) { - INDEX_LOOKUP[type.getIndex()] = type; - } - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronSidePaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronSidePaintBlock.java deleted file mode 100644 index 0c2142f6..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/ChevronSidePaintBlock.java +++ /dev/null @@ -1,96 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumConnectJunctionChevron; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; - -import com.silvaniastudios.roads.blocks.paint.customs.Custom1x4PaintBlock; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class ChevronSidePaintBlock extends ChevronMidPaintBlock { - - public static final PropertyEnum META_ID = PropertyEnum.create("meta", EnumMeta.class); - public static final PropertyEnum EDGE = PropertyEnum.create("edge", EnumConnectJunctionChevron.class); - - public ChevronSidePaintBlock(String name, String category, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, false, category, coreMetas, dynamic, colour); - this.setDefaultState(this.blockState.getBaseState().withProperty(META_ID, EnumMeta.id0).withProperty(EDGE, EnumConnectJunctionChevron.NONE)); - this.setCreativeTab(FurenikusRoads.tab_paint_junction); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs creativeTabs, NonNullList list) { - list.add(new ItemStack(this, 1, 0)); - list.add(new ItemStack(this, 1, 8)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumMeta)state.getValue(META_ID)).getMetadata(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta)); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {META_ID, EDGE}); - } - - public EnumConnectJunctionChevron getEdge(IBlockAccess world, BlockPos pos) { - int rootBlockMeta = getMetaFromState(world.getBlockState(pos)); - IBlockState offsetBlockNorth = world.getBlockState(pos.offset(EnumFacing.NORTH)); - IBlockState offsetBlockEast = world.getBlockState(pos.offset(EnumFacing.EAST)); - IBlockState offsetBlockSouth = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - IBlockState offsetBlockWest = world.getBlockState(pos.offset(EnumFacing.WEST)); - int offsetMetaNorth = offsetBlockNorth.getBlock() instanceof Custom1x4PaintBlock ? offsetBlockNorth.getBlock().getMetaFromState(offsetBlockNorth) : -1; - int offsetMetaEast = offsetBlockEast.getBlock() instanceof Custom1x4PaintBlock ? offsetBlockEast.getBlock().getMetaFromState(offsetBlockEast) : -1; - int offsetMetaSouth = offsetBlockSouth.getBlock() instanceof Custom1x4PaintBlock ? offsetBlockSouth.getBlock().getMetaFromState(offsetBlockSouth) : -1; - int offsetMetaWest = offsetBlockWest.getBlock() instanceof Custom1x4PaintBlock ? offsetBlockWest.getBlock().getMetaFromState(offsetBlockWest) : -1; - - - if (rootBlockMeta == 4 && offsetMetaWest == 3 && offsetMetaSouth == 0) { return EnumConnectJunctionChevron.N_1; } - if (rootBlockMeta == 5 && offsetMetaNorth == 7 && offsetMetaWest == 4) { return EnumConnectJunctionChevron.E_1; } - if (rootBlockMeta == 6 && offsetMetaEast == 11 && offsetMetaNorth == 8) { return EnumConnectJunctionChevron.S_1; } - if (rootBlockMeta == 7 && offsetMetaNorth == 15 && offsetMetaEast == 12) { return EnumConnectJunctionChevron.W_1; } - - if (rootBlockMeta == 12 && offsetMetaEast == 3 && offsetMetaSouth == 0) { return EnumConnectJunctionChevron.N_2; } - if (rootBlockMeta == 13 && offsetMetaSouth == 7 && offsetMetaWest == 4) { return EnumConnectJunctionChevron.E_2; } - if (rootBlockMeta == 14 && offsetMetaWest == 11 && offsetMetaNorth == 8) { return EnumConnectJunctionChevron.S_2; } - if (rootBlockMeta == 15 && offsetMetaSouth == 15 && offsetMetaEast == 12) { return EnumConnectJunctionChevron.W_2; } - - if (rootBlockMeta == 4) {} - - return EnumConnectJunctionChevron.NONE; - } - - @Override - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state.withProperty(EDGE, getEdge(worldIn, pos)); - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 8, new ModelResourceLocation(getRegistryName(), "inventory_2")); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/CrossingPaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/CrossingPaintBlock.java deleted file mode 100644 index 3ba4277a..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/CrossingPaintBlock.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; - -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; -import net.minecraft.block.Block; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class CrossingPaintBlock extends PaintBlockBase implements IMetaBlockName { - - public static final PropertyBool NORTH = PropertyBool.create("north"); - public static final PropertyBool EAST = PropertyBool.create("east"); - public static final PropertyBool SOUTH = PropertyBool.create("south"); - public static final PropertyBool WEST = PropertyBool.create("west"); - - public CrossingPaintBlock(String name, String category, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, category, coreMetas, dynamic, colour); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(NORTH, false) - .withProperty(EAST, false) - .withProperty(SOUTH, false) - .withProperty(WEST, false)); - this.setCreativeTab(FurenikusRoads.tab_paint_icons); - } - - private boolean isEdgeAndOpposite(IBlockAccess world, BlockPos pos, EnumFacing facing, EnumFacing oppositeSide) { - BlockPos offset = pos.offset(facing); - BlockPos offsetOpposite = pos.offset(oppositeSide); - IBlockState state = world.getBlockState(offset); - IBlockState stateOpposite = world.getBlockState(offsetOpposite); - Block block = state.getBlock(); - Block blockOpposite = stateOpposite.getBlock(); - boolean b1 = block instanceof CrossingPaintBlock; - boolean b2 = blockOpposite instanceof CrossingPaintBlock; - if (b1 && !b2) { - return true; - } - return false; - } - - public int getMetaFromState(IBlockState state) { - return 0; - } - - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState(); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {NORTH, EAST, WEST, SOUTH}); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state.withProperty(NORTH, isEdgeAndOpposite(worldIn, pos, EnumFacing.NORTH, EnumFacing.SOUTH)) - .withProperty(SOUTH, isEdgeAndOpposite(worldIn, pos, EnumFacing.SOUTH, EnumFacing.NORTH)) - .withProperty(EAST, isEdgeAndOpposite(worldIn, pos, EnumFacing.EAST, EnumFacing.WEST)) - .withProperty(WEST, isEdgeAndOpposite(worldIn, pos, EnumFacing.WEST, EnumFacing.EAST)); - - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/JunctionFilterLinePaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/JunctionFilterLinePaintBlock.java deleted file mode 100644 index a8d6044a..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/JunctionFilterLinePaintBlock.java +++ /dev/null @@ -1,393 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumFourLengthConnectable; - -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; -import com.silvaniastudios.roads.blocks.paint.uniques.ChevronIconPaintBlock; -import net.minecraft.block.Block; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.BlockRenderLayer; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class JunctionFilterLinePaintBlock extends PaintBlockBase implements IMetaBlockName { - - public static final PropertyEnum TYPE_ROT = PropertyEnum.create("position_rotation", EnumFourLengthConnectable.class); - public static final PropertyEnum CONNECT = PropertyEnum.create("connect", EnumChevronConnections.class); - - boolean leftSide = false; - - public JunctionFilterLinePaintBlock(String name, boolean leftSide, String category, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, category, coreMetas, dynamic, colour); - this.leftSide = leftSide; - this.setDefaultState(this.blockState.getBaseState().withProperty(TYPE_ROT, EnumFourLengthConnectable.NORTH_TOP).withProperty(CONNECT, EnumChevronConnections.NONE)); - this.setCreativeTab(FurenikusRoads.tab_paint_junction); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - EnumFacing placerFacing = placer.getHorizontalFacing(); - int placeMeta = 0; - - IBlockState northBlock = world.getBlockState(pos.offset(EnumFacing.NORTH)); - IBlockState eastBlock = world.getBlockState(pos.offset(EnumFacing.EAST)); - IBlockState southBlock = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - IBlockState westBlock = world.getBlockState(pos.offset(EnumFacing.WEST)); - - int northMeta = -1; - int eastMeta = -1; - int southMeta = -1; - int westMeta = -1; - - if (northBlock.getBlock() instanceof JunctionFilterLinePaintBlock) { northMeta = getMetaFromState(northBlock); } - if ( eastBlock.getBlock() instanceof JunctionFilterLinePaintBlock) { eastMeta = getMetaFromState(eastBlock); } - if (southBlock.getBlock() instanceof JunctionFilterLinePaintBlock) { southMeta = getMetaFromState(southBlock); } - if ( westBlock.getBlock() instanceof JunctionFilterLinePaintBlock) { westMeta = getMetaFromState(westBlock); } - - if (placerFacing.equals(EnumFacing.NORTH)) { - placeMeta = 3; - - //block to right - "Flip fifth". Places the fifth required block to complete the system by rotating 180 degrees. - if (leftSide) { - if (eastBlock.getBlock() instanceof JunctionFilterLinePaintBlock && eastMeta == 0) { - return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(8)); - } - } else if (westBlock.getBlock() instanceof JunctionFilterLinePaintBlock && westMeta == 0) { - return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(8)); - } - //block behind - if (southBlock.getBlock() instanceof JunctionFilterLinePaintBlock) { - if (southMeta == 8) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(3)); } //Block below is flipped fifth. Start again from lowest option. - if (southMeta < 11 && southMeta > 7) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(southMeta + 1)); } - if (southMeta < 4 && southMeta > 0) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(southMeta - 1)); } - } - //block in front - if (northBlock.getBlock() instanceof JunctionFilterLinePaintBlock) { - if (northMeta == 3) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(8)); } //Also a flip fifth, at the bottom. - if (northMeta < 3) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(northMeta + 1)); } - if (northMeta < 12 && northMeta > 8) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(northMeta - 1)); } - } - } - - if (placerFacing.equals(EnumFacing.SOUTH)) { - placeMeta = 11; - - //"Flip fifth". Places the fifth required block to complete the system by rotating 180 degrees. - if (leftSide) { - if (westBlock.getBlock() instanceof JunctionFilterLinePaintBlock && westMeta == 8) { - return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(0)); - } - } else if (eastBlock.getBlock() instanceof JunctionFilterLinePaintBlock && eastMeta == 8) { - return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(0)); - } - //block behind - if (northBlock.getBlock() instanceof JunctionFilterLinePaintBlock) { - if (northMeta == 0) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(11)); } //Block below is flipped fifth. Start again from lowest option. - if (northMeta < 3) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(northMeta + 1)); } - if (northMeta < 12 && northMeta > 8) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(northMeta - 1)); } - } - //block in front - if (southBlock.getBlock() instanceof JunctionFilterLinePaintBlock) { - if (southMeta == 11) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(0)); } //Also a flip fifth, at the bottom. - if (southMeta < 11 && southMeta > 7) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(southMeta + 1)); } - if (southMeta < 4 && southMeta > 0) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(southMeta - 1)); } - } - } - - if (placerFacing.equals(EnumFacing.EAST)) { - placeMeta = 7; - - //"Flip fifth". Places the fifth required block to complete the system by rotating 180 degrees. - if (leftSide) { - if (southBlock.getBlock() instanceof JunctionFilterLinePaintBlock && southMeta == 4) { - return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(12)); - } - } else if (northBlock.getBlock() instanceof JunctionFilterLinePaintBlock && northMeta == 4) { - return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(12)); - } - //block behind - if (westBlock.getBlock() instanceof JunctionFilterLinePaintBlock) { - if (westMeta == 12) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(7)); } //Also a flip fifth, at the bottom. - if (westMeta > 11 && westMeta < 15) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(westMeta + 1)); } - if (westMeta > 4 && westMeta < 8) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(westMeta - 1)); } - } - //block in front - if (eastBlock.getBlock() instanceof JunctionFilterLinePaintBlock) { - if (eastMeta == 7) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(12)); } //Block below is flipped fifth. Start again from lowest option. - if (eastMeta > 3 && eastMeta < 7) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(eastMeta + 1)); } - if (eastMeta > 12) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(eastMeta - 1)); } - } - } - - if (placerFacing.equals(EnumFacing.WEST)) { - placeMeta = 15; - - //"Flip fifth". Places the fifth required block to complete the system by rotating 180 degrees. - if (leftSide) { - if (northBlock.getBlock() instanceof JunctionFilterLinePaintBlock && northMeta == 12) { - return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(4)); - } - } else if (southBlock.getBlock() instanceof JunctionFilterLinePaintBlock && southMeta == 12) { - return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(4)); - } - //block behind - if (eastBlock.getBlock() instanceof JunctionFilterLinePaintBlock) { - if (eastMeta == 4) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(15)); } //Also a flip fifth, at the bottom. - if (eastMeta > 3 && eastMeta < 7) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(eastMeta + 1)); } - if (eastMeta > 12) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(eastMeta - 1)); } - } - //block in front - if (westBlock.getBlock() instanceof JunctionFilterLinePaintBlock) { - if (westMeta == 15) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(4)); } //Block below is flipped fifth. Start again from lowest option. - if (westMeta > 11 && westMeta < 15) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(westMeta + 1)); } - if (westMeta > 4 && westMeta < 8) { return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(westMeta - 1)); } - } - } - return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(placeMeta)); //TODO - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumFourLengthConnectable)state.getValue(TYPE_ROT)).getIndex(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(TYPE_ROT, EnumFourLengthConnectable.byMetadata(meta)); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {TYPE_ROT, CONNECT}); - } - - @Override - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state.withProperty(CONNECT, connectToChevron(worldIn, pos)); - } - - - - @SideOnly(Side.CLIENT) - public BlockRenderLayer getBlockLayer() { - return BlockRenderLayer.CUTOUT_MIPPED; - } - - private boolean isMidChevron(IBlockAccess world, BlockPos pos, EnumFacing facing) { - Block block = world.getBlockState(pos.offset(facing)).getBlock(); - if (block.getUnlocalizedName().contains("_chevron_mid")) { - return true; - } - - return false; - } - - private EnumChevronConnections connectToChevron(IBlockAccess world, BlockPos pos) { - IBlockState state = world.getBlockState(pos); - int meta = getMetaFromState(state); - - IBlockState stateNorth = world.getBlockState(pos); - IBlockState stateEast = world.getBlockState(pos); - IBlockState stateSouth = world.getBlockState(pos); - IBlockState stateWest = world.getBlockState(pos); - - boolean blockNorth = world.getBlockState(pos.offset(EnumFacing.NORTH)).getBlock() instanceof ChevronPaintBlock || isMidChevron(world, pos, EnumFacing.NORTH); - boolean blockEast = world.getBlockState(pos.offset(EnumFacing.EAST)) .getBlock() instanceof ChevronPaintBlock || isMidChevron(world, pos, EnumFacing.EAST); - boolean blockSouth = world.getBlockState(pos.offset(EnumFacing.SOUTH)).getBlock() instanceof ChevronPaintBlock || isMidChevron(world, pos, EnumFacing.SOUTH); - boolean blockWest = world.getBlockState(pos.offset(EnumFacing.WEST)) .getBlock() instanceof ChevronPaintBlock || isMidChevron(world, pos, EnumFacing.WEST); - - if (blockNorth) { stateNorth = world.getBlockState(pos.offset(EnumFacing.NORTH)); } - if (blockEast) { stateEast = world.getBlockState(pos.offset(EnumFacing.EAST)); } - if (blockSouth) { stateSouth = world.getBlockState(pos.offset(EnumFacing.SOUTH)); } - if (blockWest) { stateWest = world.getBlockState(pos.offset(EnumFacing.WEST)); } - - boolean blockSide = false; - IBlockState stateSide = null; - - //north - if (meta < 4) { - if (leftSide) { - blockSide = blockEast; - stateSide = stateEast; - } else { - blockSide = blockWest; - stateSide = stateWest; - } - } - //east - if (meta > 3 && meta < 8) { - if (leftSide) { - blockSide = blockSouth; - stateSide = stateSouth; - } else { - blockSide = blockNorth; - stateSide = stateNorth; - } - } - //south - if (meta > 7 && meta < 12) { - if (leftSide) { - blockSide = blockWest; - stateSide = stateWest; - } else { - blockSide = blockEast; - stateSide = stateEast; - } - } - //west - if (meta > 11) { - if (leftSide) { - blockSide = blockNorth; - stateSide = stateNorth; - } else { - blockSide = blockSouth; - stateSide = stateSouth; - } - } - - if (!blockSide) { - boolean blockAbove = world.getBlockState(pos.offset(EnumFacing.UP)) .getBlock() instanceof ChevronPaintBlock; - boolean blockBelow = world.getBlockState(pos.offset(EnumFacing.DOWN)).getBlock() instanceof ChevronPaintBlock; - - if (blockAbove) { - stateSide = world.getBlockState(pos.offset(EnumFacing.UP)); - blockSide = true; - } else if (blockBelow) { - stateSide = world.getBlockState(pos.offset(EnumFacing.DOWN)); - blockSide = true; - } - } - - if (blockSide) { - ChevronPaintBlock.EnumJunctionConnections cnct = null; - - if (stateSide.getBlock() instanceof ChevronIconPaintBlock) { - ChevronIconPaintBlock mipb = (ChevronIconPaintBlock) stateSide.getBlock(); - int mipbMeta = mipb.getMetaFromState(stateSide); - - if (mipbMeta < 4) { cnct = ChevronPaintBlock.EnumJunctionConnections.CHEVRON_B; - } else if (mipbMeta < 8) { cnct = ChevronPaintBlock.EnumJunctionConnections.CHEVRON_A; - } else if (mipbMeta < 12) { cnct = ChevronPaintBlock.EnumJunctionConnections.CHEVRON_THIN_B; - } else { cnct = ChevronPaintBlock.EnumJunctionConnections.CHEVRON_THIN_A; } - } else { - cnct = (ChevronPaintBlock.EnumJunctionConnections) stateSide.getProperties().get(ChevronPaintBlock.TYPE); - } - - if (cnct == null) { - return EnumChevronConnections.TOP_CHEVRON_A; - } - - if (cnct.equals(ChevronPaintBlock.EnumJunctionConnections.CHEVRON_A)) { - if (meta == 0 || meta == 4 || meta == 8 || meta == 12) { return EnumChevronConnections.TOP_CHEVRON_A; } - if (meta == 1 || meta == 5 || meta == 9 || meta == 13) { return EnumChevronConnections.TOP_MID_CHEVRON_A; } - if (meta == 2 || meta == 6 || meta == 10 || meta == 14) { return EnumChevronConnections.BOTTOM_MID_CHEVRON_A; } - if (meta == 3 || meta == 7 || meta == 11 || meta == 15) { return EnumChevronConnections.BOTTOM_CHEVRON_A; } - } - - if (cnct.equals(ChevronPaintBlock.EnumJunctionConnections.CHEVRON_B)) { - if (meta == 0 || meta == 4 || meta == 8 || meta == 12) { return EnumChevronConnections.TOP_CHEVRON_B; } - if (meta == 1 || meta == 5 || meta == 9 || meta == 13) { return EnumChevronConnections.TOP_MID_CHEVRON_B; } - if (meta == 2 || meta == 6 || meta == 10 || meta == 14) { return EnumChevronConnections.BOTTOM_MID_CHEVRON_B; } - if (meta == 3 || meta == 7 || meta == 11 || meta == 15) { return EnumChevronConnections.BOTTOM_CHEVRON_B; } - } - - if (cnct.equals(ChevronPaintBlock.EnumJunctionConnections.CHEVRON_THIN_A)) { - if (meta == 0 || meta == 4 || meta == 8 || meta == 12) { return EnumChevronConnections.TOP_CHEVRON_THIN_A; } - if (meta == 1 || meta == 5 || meta == 9 || meta == 13) { return EnumChevronConnections.TOP_MID_CHEVRON_THIN_A; } - if (meta == 2 || meta == 6 || meta == 10 || meta == 14) { return EnumChevronConnections.BOTTOM_MID_CHEVRON_THIN_A; } - if (meta == 3 || meta == 7 || meta == 11 || meta == 15) { return EnumChevronConnections.BOTTOM_CHEVRON_THIN_A; } - } - - if (cnct.equals(ChevronPaintBlock.EnumJunctionConnections.CHEVRON_THIN_B)) { - if (meta == 0 || meta == 4 || meta == 8 || meta == 12) { return EnumChevronConnections.TOP_CHEVRON_THIN_B; } - if (meta == 1 || meta == 5 || meta == 9 || meta == 13) { return EnumChevronConnections.TOP_MID_CHEVRON_THIN_B; } - if (meta == 2 || meta == 6 || meta == 10 || meta == 14) { return EnumChevronConnections.BOTTOM_MID_CHEVRON_THIN_B; } - if (meta == 3 || meta == 7 || meta == 11 || meta == 15) { return EnumChevronConnections.BOTTOM_CHEVRON_THIN_B; } - } - } - - return EnumChevronConnections.NONE; - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - public static enum EnumChevronConnections implements IStringSerializable { - NONE(0, "none"), - TOP_CHEVRON_A(1, "top_chevron_a"), - TOP_CHEVRON_B(2, "top_chevron_b"), - TOP_CHEVRON_THIN_A(3, "top_chevron_thin_a"), - TOP_CHEVRON_THIN_B(4, "top_chevron_thin_b"), - - TOP_MID_CHEVRON_A(5, "top_mid_chevron_a"), - TOP_MID_CHEVRON_B(6, "top_mid_chevron_b"), - TOP_MID_CHEVRON_THIN_A(7, "top_mid_chevron_thin_a"), - TOP_MID_CHEVRON_THIN_B(8, "top_mid_chevron_thin_b"), - - BOTTOM_MID_CHEVRON_A(9, "bottom_mid_chevron_a"), - BOTTOM_MID_CHEVRON_B(10, "bottom_mid_chevron_b"), - BOTTOM_MID_CHEVRON_THIN_A(11, "bottom_mid_chevron_thin_a"), - BOTTOM_MID_CHEVRON_THIN_B(12, "bottom_mid_chevron_thin_b"), - - BOTTOM_CHEVRON_A(13, "bottom_chevron_a"), - BOTTOM_CHEVRON_B(14, "bottom_chevron_b"), - BOTTOM_CHEVRON_THIN_A(15, "bottom_chevron_thin_a"), - BOTTOM_CHEVRON_THIN_B(16, "bottom_chevron_thin_b"); - - private static final EnumChevronConnections[] ID_LOOKUP = new EnumChevronConnections[values().length]; - private final int id; - private final String name; - - private EnumChevronConnections(int id, String name) { - this.id = id; - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public int getId() { - return this.id; - } - - public static EnumChevronConnections byId(int id) { - if (id < 0 || id >= ID_LOOKUP.length) { - id = 0; - } - - return ID_LOOKUP[id]; - } - - static { - for (EnumChevronConnections type: values()) { - ID_LOOKUP[type.getId()] = type; - } - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/JunctionPaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/JunctionPaintBlock.java deleted file mode 100644 index d081f118..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/JunctionPaintBlock.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class JunctionPaintBlock extends PaintBlockBase implements IMetaBlockName { - - public static final PropertyEnum META_ID = PropertyEnum.create("meta", EnumMeta.class); - - public JunctionPaintBlock(String name, String category, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, category, coreMetas, dynamic, colour); - this.setDefaultState(this.blockState.getBaseState().withProperty(META_ID, EnumMeta.id0)); - this.setCreativeTab(FurenikusRoads.tab_paint_icons); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - int returnMeta = meta; - - if (placer.getHorizontalFacing().equals(EnumFacing.EAST)) { returnMeta = meta + 1; } - if (placer.getHorizontalFacing().equals(EnumFacing.SOUTH)) { returnMeta = meta + 2; } - if (placer.getHorizontalFacing().equals(EnumFacing.WEST)) { returnMeta = meta + 3; } - - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(returnMeta)); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs creativeTabs, NonNullList list) { - list.add(new ItemStack(this, 1, 0)); - list.add(new ItemStack(this, 1, 4)); - list.add(new ItemStack(this, 1, 8)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumMeta)state.getValue(META_ID)).getMetadata(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta)); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {META_ID}); - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 4, new ModelResourceLocation(getRegistryName(), "inventory_2")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 8, new ModelResourceLocation(getRegistryName(), "inventory_3")); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/LargeTextPaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/LargeTextPaintBlock.java deleted file mode 100644 index be73a7b1..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/LargeTextPaintBlock.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; - -import com.silvaniastudios.roads.blocks.paint.customs.CustomMetaPaintBlock; -import com.silvaniastudios.roads.blocks.paint.customs.CustomPaintBlock; -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.BlockRenderLayer; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class LargeTextPaintBlock extends CustomMetaPaintBlock { - - public LargeTextPaintBlock(String name, String localName, PaintGrid[] grids, String category, PaintColour colour) { - super(name, localName, EnumPaintType.LARGE_TEXT, grids, category, new int[] {0, 4}, colour); - this.dynamic = new boolean[] {false, true}; - this.setDefaultState(this.blockState.getBaseState().withProperty(META_ID, EnumMeta.id0)); - } - - public LargeTextPaintBlock(String name, PaintGrid[] grids, String category, PaintColour colour) { - super(name, EnumPaintType.LARGE_TEXT, grids, category, new int[] {0, 4}, colour, FurenikusRoads.tab_paint_text); - this.dynamic = new boolean[] {false, true}; - this.setDefaultState(this.blockState.getBaseState().withProperty(META_ID, EnumMeta.id0)); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - EnumFacing placerFacing = placer.getHorizontalFacing(); - int returnMeta = meta; - - if (placerFacing.equals(EnumFacing.EAST)) { returnMeta = meta + 1; } - if (placerFacing.equals(EnumFacing.SOUTH)) { returnMeta = meta + 2; } - if (placerFacing.equals(EnumFacing.WEST)) { returnMeta = meta + 3; } - - IBlockState northBlock = world.getBlockState(pos.offset(EnumFacing.NORTH)); - IBlockState eastBlock = world.getBlockState(pos.offset(EnumFacing.EAST)); - IBlockState southBlock = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - IBlockState westBlock = world.getBlockState(pos.offset(EnumFacing.WEST)); - - if (meta > 3) { - if (placerFacing.equals(EnumFacing.NORTH)) { - if (westBlock.getBlock() instanceof LargeTextPaintBlock) { - if (getMetaFromState(westBlock) < 12 && getMetaFromState(westBlock) > 3) { - returnMeta = getMetaFromState(westBlock) + 4; - } - } - } - - if (placerFacing.equals(EnumFacing.EAST)) { - if (northBlock.getBlock() instanceof LargeTextPaintBlock) { - if (getMetaFromState(northBlock) < 12 && getMetaFromState(northBlock) > 3) { - returnMeta = getMetaFromState(northBlock) + 4; - } - } - } - - if (placerFacing.equals(EnumFacing.SOUTH)) { - if (eastBlock.getBlock() instanceof LargeTextPaintBlock) { - if (getMetaFromState(eastBlock) < 12 && getMetaFromState(eastBlock) > 3) { - returnMeta = getMetaFromState(eastBlock) + 4; - } - } - } - - if (placerFacing.equals(EnumFacing.WEST)) { - if (southBlock.getBlock() instanceof LargeTextPaintBlock) { - if (getMetaFromState(southBlock) < 12 && getMetaFromState(southBlock) > 3) { - returnMeta = getMetaFromState(southBlock) + 4; - } - } - } - } - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(returnMeta)); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/LinePaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/LinePaintBlock.java deleted file mode 100644 index 73a9b13f..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/LinePaintBlock.java +++ /dev/null @@ -1,126 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.paint.properties.UnlistedPropertyConnection; - -import net.minecraft.block.Block; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.common.property.ExtendedBlockState; -import net.minecraftforge.common.property.IExtendedBlockState; -import net.minecraftforge.common.property.IUnlistedProperty; - -public class LinePaintBlock extends PaintBlockCustomRenderBase { - - public static final UnlistedPropertyConnection NORTH = new UnlistedPropertyConnection("north"); - public static final UnlistedPropertyConnection EAST = new UnlistedPropertyConnection("east"); - public static final UnlistedPropertyConnection SOUTH = new UnlistedPropertyConnection("south"); - public static final UnlistedPropertyConnection WEST = new UnlistedPropertyConnection("west"); - public static final PropertyEnum FACING = PropertyEnum.create("facing", LinePaintBlock.EnumRotation.class); - - public LinePaintBlock(String name, String category, PaintColour colour) { - super(name, category, new int[] { 0, 2 }, new boolean[] {false, true}, colour); - this.setDefaultState(this.blockState.getBaseState().withProperty(FACING, LinePaintBlock.EnumRotation.ns)); - this.setCreativeTab(FurenikusRoads.tab_paint_lines); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - if (meta < 2) { - if (placer.getHorizontalFacing() == EnumFacing.EAST || placer.getHorizontalFacing() == EnumFacing.WEST) { - return this.getDefaultState().withProperty(FACING, LinePaintBlock.EnumRotation.ew); - } - return this.getDefaultState().withProperty(FACING, LinePaintBlock.EnumRotation.ns); - } - return this.getDefaultState().withProperty(FACING, LinePaintBlock.EnumRotation.connect); - } - - public boolean canConnectTo(IBlockAccess worldIn, BlockPos pos, EnumFacing facing) { - IBlockState state = worldIn.getBlockState(pos); - Block block = state.getBlock(); - return block instanceof LinePaintBlock || block instanceof ArrowLinePaintBlock; - } - - private boolean canLineConnectTo(IBlockAccess world, BlockPos pos, EnumFacing facing) { - BlockPos offset = pos.offset(facing); - return canConnectTo(world, offset, facing.getOpposite()) || canConnectTo(world, offset.offset(EnumFacing.DOWN), facing.getOpposite()) || canConnectTo(world, offset.offset(EnumFacing.UP), facing.getOpposite()); - } - - public int getMetaFromState(IBlockState state) { - if (state.getValue(FACING).equals(LinePaintBlock.EnumRotation.ns)) { - return 0; - } else if (state.getValue(FACING).equals(LinePaintBlock.EnumRotation.ew)) { - return 1; - } else { - return 2; - } - } - - public IBlockState getStateFromMeta(int meta) { - if (meta == 0) { return this.getDefaultState().withProperty(FACING, LinePaintBlock.EnumRotation.ns); } - if (meta == 1) { return this.getDefaultState().withProperty(FACING, LinePaintBlock.EnumRotation.ew); } - return this.getDefaultState().withProperty(FACING, LinePaintBlock.EnumRotation.connect); - } - - @SuppressWarnings("rawtypes") - protected BlockStateContainer createBlockState() { - IProperty[] listedProperties = new IProperty[] { FACING }; - IUnlistedProperty[] unlistedProperties = new IUnlistedProperty[] { NORTH, EAST, WEST, SOUTH }; - - return new ExtendedBlockState(this, listedProperties, unlistedProperties); - } - - @Override - public IBlockState getExtendedState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - IExtendedBlockState extendedBlockState = (IExtendedBlockState) state; - boolean n = canLineConnectTo(worldIn, pos, EnumFacing.NORTH); - boolean e = canLineConnectTo(worldIn, pos, EnumFacing.EAST); - boolean s = canLineConnectTo(worldIn, pos, EnumFacing.SOUTH); - boolean w = canLineConnectTo(worldIn, pos, EnumFacing.WEST); - - if (state.getValue(FACING) == EnumRotation.ns) { - n = true; - s = true; - } - - if (state.getValue(FACING) == EnumRotation.ew) { - e = true; - w = true; - } - - return extendedBlockState.withProperty(NORTH, n).withProperty(EAST, e).withProperty(SOUTH, s).withProperty(WEST, w); - } - - public enum EnumRotation implements IStringSerializable { - ns("north_south"), - ew("east_west"), - connect("connect"); - - private final String name; - - EnumRotation(String name) { - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public static EnumRotation byMetadata(int meta) { - if (meta == 0) { return EnumRotation.ns; } - if (meta == 1) { return EnumRotation.ew; } - return EnumRotation.connect; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/PaintBlockBase.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/PaintBlockBase.java deleted file mode 100644 index 4677564e..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/PaintBlockBase.java +++ /dev/null @@ -1,271 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import java.util.Arrays; -import java.util.Random; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.BlockBase; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.NonPaintRoadTopBlock; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.decorative.CurbBlock; -import com.silvaniastudios.roads.blocks.diagonal.RoadBlockDiagonal; -import com.silvaniastudios.roads.items.FRItems; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockAir; -import net.minecraft.block.material.Material; -import net.minecraft.block.state.BlockFaceShape; -import net.minecraft.block.state.IBlockState; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class PaintBlockBase extends BlockBase { - - private String categoryName; - private int[] coreMetas; - protected boolean[] dynamic; - private PaintColour colour; - - public PaintBlockBase(String name, String catName, int[] coreMetas, boolean[] dynamic, PaintColour colour) { - super(name, Material.CLOTH); - this.categoryName = catName; - this.coreMetas = coreMetas; - this.setHardness(2.0F); - this.dynamic = dynamic; - this.colour = colour; - } - - public PaintBlockBase(String name, String catName, int[] coreMetas, boolean dynamic, PaintColour colour) { - this(name, catName, coreMetas, null, colour); - if (coreMetas != null) { - this.dynamic = new boolean[coreMetas.length]; - if (dynamic) { - Arrays.fill(this.dynamic, true); - } - } - } - - public PaintColour getColour() { - return this.colour; - } - - public String getCategory() { - return categoryName; - } - - public int[] getCoreMetas() { - return coreMetas; - } - - public boolean canConnect(int id) { - return dynamic[id]; - } - - //Searches through the unlocalized name, removes reference of colour and returns a name of the icon which should be uniform across all colours. - //Used for the item and paint gun icons - public String getIconName() { - for (int i = 0; i < FRBlocks.col.size(); i++) { - if (this.name.contains(FRBlocks.col.get(i).getName() + "_")) { - return this.name.replace(FRBlocks.col.get(i).getName() + "_", ""); - } else if (this.name.contains("_" + FRBlocks.col.get(i).getName())) { //for if the name ends with the colour for any reason which it never should but y'know - return this.name.replace("_" + FRBlocks.col.get(i).getName(), ""); - } - } - - return ""; - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @Deprecated - @Override - public boolean isBlockNormalCube(IBlockState state) { - return false; - } - - @Override - public boolean isNormalCube(IBlockState state, IBlockAccess world, BlockPos pos) { - return false; - } - - @Override - public Item getItemDropped(IBlockState state, Random rand, int fortune) { - return ItemStack.EMPTY.getItem(); - } - - @Override - public BlockFaceShape getBlockFaceShape(IBlockAccess worldIn, IBlockState state, BlockPos pos, EnumFacing face) { - return BlockFaceShape.UNDEFINED; - } - - //Get pick block from the provided core meta options. - public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, EntityPlayer player) { - int closest = 0; - if (getCoreMetas() == null) { //I should fix the nulls, but honestly don't care enough about 1.12 anymore to commit any more time than writing this comment. - return new ItemStack(this, 1, 0); - } - for (int i = 0; i < getCoreMetas().length; i++) { - if (getCoreMetas()[i] <= getMetaFromState(state) && getCoreMetas()[i] > closest) { - closest = getCoreMetas()[i]; - } - } - return new ItemStack(this, 1, closest); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs tab, NonNullList items) { - for (int i = 0; i < getCoreMetas().length; i++) { - items.add(new ItemStack(this, 1, getCoreMetas()[i])); - } - } - - //@SuppressWarnings("deprecation") - //TODO this has always been buggy anyway, reimplement later. - /*public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, EntityPlayer player) { - ItemStack item = player.getHeldItem(EnumHand.MAIN_HAND); - if (item.getItem() instanceof PaintGun) { - if (getItem(world, pos, state).getItem() instanceof ItemBlock && item.hasTagCompound()) { - Block block = ((ItemBlock) getItem(world, pos, state).getItem()).getBlock(); - if (block instanceof PaintBlockBase) { - PaintBlockBase whiteBlock = PaintGunItemRegistry.getWhite((PaintBlockBase) block); - NBTTagCompound nbt = item.getTagCompound(); - int pageId = nbt.getInteger("pageId"); - int id = nbt.getInteger("selectedId"); - int selMeta = nbt.getInteger("selMeta"); - int selectedColour = nbt.getInteger("colour"); - boolean isLarge = nbt.getBoolean("isLarge"); - - int blockMeta = getMetaFromState(state); - - int lineId = PaintGunItemRegistry.findLineId(whiteBlock, blockMeta); - int iconId = PaintGunItemRegistry.findIconId(whiteBlock, blockMeta); - int letterId = PaintGunItemRegistry.findLetterId(whiteBlock, blockMeta); - int textId = PaintGunItemRegistry.findTextId(whiteBlock, blockMeta); - int junctionId = PaintGunItemRegistry.findJunctionId(whiteBlock, blockMeta); - - if (lineId <= PaintGunItemRegistry.lines.size() && lineId >= 0) { - pageId = 1; - id = lineId; - selMeta = PaintGunItemRegistry.linesMeta.get(lineId); - } - - if (iconId <= PaintGunItemRegistry.icons.size() && iconId >= 0) { - pageId = 2; - id = iconId; - selMeta = PaintGunItemRegistry.iconsMeta.get(iconId); - } - - if (letterId <= PaintGunItemRegistry.letters.size() && letterId >= 0) { - pageId = 3; - id = letterId; - selMeta = PaintGunItemRegistry.lettersMeta.get(letterId); - } - - if (textId <= PaintGunItemRegistry.text.size() && textId >= 0) { - pageId = 4; - id = textId; - selMeta = PaintGunItemRegistry.textMeta.get(textId); - if (selMeta == 4) { isLarge = true; } - } - - if (junctionId <= PaintGunItemRegistry.junction.size() && junctionId >= 0) { - pageId = 5; - id = junctionId; - selMeta = PaintGunItemRegistry.junctionMeta.get(junctionId); - } - - //This is all client-side only because reasons, so gotta send a packety boi - FurenikusRoads.PACKET_CHANNEL.sendToServer(new PaintGunUpdatePacket(id, selMeta, selectedColour, pageId, isLarge)); - return ItemStack.EMPTY; - } - } - } - return getItem(world, pos, state); - }*/ - - @Override - public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - Item item = player.getHeldItem(hand).getItem(); - - if (item.equals(FRItems.paint_scraper)) { - world.setBlockToAir(pos); - } - - return true; - } - - @Override - public void neighborChanged(IBlockState state, World world, BlockPos pos, Block blockIn, BlockPos fromPos) { - if (world.getBlockState(pos.offset(EnumFacing.DOWN)).getBlock() instanceof BlockAir) { - if (RoadsConfig.general.breakPaintOnBlockBreak) { - world.setBlockToAir(pos); - } - } - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { - return new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(source, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(source, pos)+0.0625, 1.0D); - } - - @Nullable - public AxisAlignedBB getCollisionBoundingBox(IBlockState blockState, IBlockAccess worldIn, BlockPos pos) { - return NULL_AABB; - } - - @Override - public Block.EnumOffsetType getOffsetType() - { - return Block.EnumOffsetType.XYZ; - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - double offset = 1.0 - getBlockBelowHeight(worldIn, pos); - return new Vec3d(0, -offset, 0); - } - - @SuppressWarnings("deprecation") - public double getBlockBelowHeight(IBlockAccess worldIn, BlockPos pos) { - IBlockState underState = worldIn.getBlockState(pos.offset(EnumFacing.DOWN)); - Block underBlock = underState.getBlock(); - double extraOffset = 0.0; - - if (underBlock instanceof RoadBlockDiagonal) { - RoadBlockDiagonal rbd = (RoadBlockDiagonal) underBlock; - - return rbd.getBlockHeight(worldIn, rbd.getRoad(worldIn, pos.offset(EnumFacing.DOWN)), rbd.getRoadPos(worldIn, pos.offset(EnumFacing.DOWN))); - } - - if (underBlock instanceof PaintBlockBase || underBlock instanceof NonPaintRoadTopBlock || underBlock instanceof CurbBlock) { - extraOffset = 0.062; - } - - return underBlock.getBoundingBox(underState, worldIn, pos.offset(EnumFacing.DOWN)).maxY - extraOffset; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/PaintBlockCustomRenderBase.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/PaintBlockCustomRenderBase.java deleted file mode 100644 index 77764c4b..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/PaintBlockCustomRenderBase.java +++ /dev/null @@ -1,65 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.client.renderer.block.statemap.DefaultStateMapper; -import net.minecraft.client.renderer.block.statemap.StateMapperBase; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.NonNullList; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class PaintBlockCustomRenderBase extends PaintBlockBase implements IMetaBlockName { - - public PaintBlockCustomRenderBase(String name, String catName, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, catName, coreMetas, dynamic, colour); - } - - public PaintBlockCustomRenderBase(String name, String catName, int[] coreMetas, boolean[] dynamic, PaintColour colour) { - super(name, catName, coreMetas, dynamic, colour); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - @SideOnly(Side.CLIENT) - public void initModel() { - StateMapperBase b = new StateMapperBase() { - @Override - protected ModelResourceLocation getModelResourceLocation(IBlockState state) { - StateMapperBase b = new DefaultStateMapper(); - return new ModelResourceLocation(state.getBlock().getRegistryName(), b.getPropertyString(state.getProperties())); - } - }; - - ModelLoader.setCustomStateMapper(this, b); - } - - @SideOnly(Side.CLIENT) - public void initItemModel() { - Item itemBlock = Item.REGISTRY.getObject(new ResourceLocation(FurenikusRoads.MODID, this.name)); - ModelResourceLocation itemModelResourceLocation = new ModelResourceLocation(getRegistryName(), "inventory"); - for (int i = 0; i < getCoreMetas().length; i++) { - if (itemBlock == null) { - FurenikusRoads.debug(0, "itemblock null!"); - continue; - } - if (itemModelResourceLocation == null) { - FurenikusRoads.debug(0, "MRL null!"); - continue; - } - Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register(itemBlock, getCoreMetas()[i], itemModelResourceLocation); - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/SideLinePaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/SideLinePaintBlock.java deleted file mode 100644 index b2f2ba5e..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/SideLinePaintBlock.java +++ /dev/null @@ -1,143 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.paint.properties.UnlistedPropertyConnection; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.properties.PropertyDirection; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.common.property.ExtendedBlockState; -import net.minecraftforge.common.property.IExtendedBlockState; -import net.minecraftforge.common.property.IUnlistedProperty; - -public class SideLinePaintBlock extends PaintBlockCustomRenderBase { - - public static final UnlistedPropertyConnection LEFT_UP = new UnlistedPropertyConnection("left_up"); - public static final UnlistedPropertyConnection LEFT_MID = new UnlistedPropertyConnection("left_mid"); - public static final UnlistedPropertyConnection LEFT_DOWN = new UnlistedPropertyConnection("left_down"); - public static final UnlistedPropertyConnection CENTRAL = new UnlistedPropertyConnection("central"); - public static final UnlistedPropertyConnection RIGHT_UP = new UnlistedPropertyConnection("right_up"); - public static final UnlistedPropertyConnection RIGHT_MID = new UnlistedPropertyConnection("right_mid"); - public static final UnlistedPropertyConnection RIGHT_DOWN = new UnlistedPropertyConnection("right_down"); - - public static final PropertyDirection FACING = PropertyDirection.create("facing", EnumFacing.Plane.HORIZONTAL); - public static final PropertyBool CONNECTING = PropertyBool.create("connect"); - - public SideLinePaintBlock(String name, String category, PaintColour colour) { - super(name, category, new int[] {0, 6}, new boolean[] {true, false}, colour); - this.setDefaultState(this.blockState.getBaseState().withProperty(FACING, EnumFacing.NORTH)); - this.setCreativeTab(FurenikusRoads.tab_paint_lines); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - boolean connect = meta <= 5; - return this.getDefaultState().withProperty(FACING, placer.getHorizontalFacing()).withProperty(CONNECTING, connect); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumFacing)state.getValue(FACING)).getIndex() + (state.getValue(CONNECTING) ? 0 : 4); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - boolean connect = meta <= 5; - EnumFacing enumfacing = EnumFacing.getFront(connect ? meta : meta-4); - if (enumfacing == EnumFacing.DOWN || enumfacing == EnumFacing.UP) { - return this.getDefaultState().withProperty(FACING, EnumFacing.NORTH).withProperty(CONNECTING, connect); - } - return this.getDefaultState().withProperty(FACING, enumfacing).withProperty(CONNECTING, connect); - } - - @SuppressWarnings("rawtypes") - @Override - protected BlockStateContainer createBlockState() { - IProperty[] listedProperties = new IProperty[] { FACING, CONNECTING }; - IUnlistedProperty[] unlistedProperties = new IUnlistedProperty[] { LEFT_UP, LEFT_MID, LEFT_DOWN, CENTRAL, RIGHT_UP, RIGHT_MID, RIGHT_DOWN }; - - return new ExtendedBlockState(this, listedProperties, unlistedProperties); - } - - //Checks if the block at the position, or directly above/below, is relevant. - private IBlockState getOffsetState(IBlockAccess world, BlockPos pos) { - if (world.getBlockState(pos).getBlock() instanceof SideLinePaintBlock) { - return world.getBlockState(pos); - } else if (world.getBlockState(pos.offset(EnumFacing.DOWN)).getBlock() instanceof SideLinePaintBlock) { - return world.getBlockState(pos.offset(EnumFacing.DOWN)); - } else if (world.getBlockState(pos.offset(EnumFacing.UP)).getBlock() instanceof SideLinePaintBlock) { - return world.getBlockState(pos.offset(EnumFacing.UP)); - } - return null; - } - - @Override - public IBlockState getExtendedState(IBlockState state, IBlockAccess world, BlockPos pos) { - IExtendedBlockState extendedBlockState = (IExtendedBlockState) state; - - boolean connect = state.getValue(CONNECTING); - - if (connect) { - BlockPos posUp = pos.offset(EnumFacing.NORTH); - BlockPos posLeft = pos.offset(EnumFacing.WEST); - BlockPos posRight = pos.offset(EnumFacing.EAST); - BlockPos posDown = pos.offset(EnumFacing.SOUTH); - - if (state.getValue(FACING) == EnumFacing.EAST) { - posUp = pos.offset(EnumFacing.EAST); - posLeft = pos.offset(EnumFacing.NORTH); - posRight = pos.offset(EnumFacing.SOUTH); - posDown = pos.offset(EnumFacing.WEST); - } - - if (state.getValue(FACING) == EnumFacing.SOUTH) { - posUp = pos.offset(EnumFacing.SOUTH); - posLeft = pos.offset(EnumFacing.EAST); - posRight = pos.offset(EnumFacing.WEST); - posDown = pos.offset(EnumFacing.NORTH); - } - - if (state.getValue(FACING) == EnumFacing.WEST) { - posUp = pos.offset(EnumFacing.WEST); - posLeft = pos.offset(EnumFacing.SOUTH); - posRight = pos.offset(EnumFacing.NORTH); - posDown = pos.offset(EnumFacing.EAST); - } - - IBlockState upState = getOffsetState(world, posUp); - IBlockState downState = getOffsetState(world, posDown); - IBlockState leftState = getOffsetState(world, posLeft); - IBlockState rightState = getOffsetState(world, posRight); - - boolean lu = upState != null ? upState.getValue(FACING) != state.getValue(FACING).rotateY() : false; - boolean lm = leftState != null ? leftState.getValue(FACING) != state.getValue(FACING).getOpposite() : false; - boolean ld = downState != null ? downState.getValue(FACING) != state.getValue(FACING).rotateY() : false; - boolean ru = upState != null ? upState.getValue(FACING) != state.getValue(FACING).rotateYCCW() : false; - boolean rm = rightState != null ? rightState.getValue(FACING) != state.getValue(FACING).getOpposite() : false; - boolean rd = downState != null ? downState.getValue(FACING) != state.getValue(FACING).rotateYCCW() : false; - - boolean central = (lu || lm || ld) && (ru || rm || rd); - - if (!lu && !lm && !ld && !ru && !rm && !rd) { - central = true; - lm = true; - rm = true; - } - - return extendedBlockState.withProperty(LEFT_UP, lu).withProperty(LEFT_MID, lm).withProperty(LEFT_DOWN, ld) - .withProperty(CENTRAL, central).withProperty(RIGHT_UP, ru).withProperty(RIGHT_MID, rm).withProperty(RIGHT_DOWN, rd); - } - - return extendedBlockState.withProperty(LEFT_UP, false).withProperty(LEFT_MID, true).withProperty(LEFT_DOWN, false) - .withProperty(CENTRAL, true).withProperty(RIGHT_UP, false).withProperty(RIGHT_MID, true).withProperty(RIGHT_DOWN, false); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/SimpleLinePaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/SimpleLinePaintBlock.java deleted file mode 100644 index 1f44e347..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/SimpleLinePaintBlock.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyDirection; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.common.property.ExtendedBlockState; -import net.minecraftforge.common.property.IUnlistedProperty; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class SimpleLinePaintBlock extends PaintBlockCustomRenderBase { - - public static final PropertyDirection FACING = PropertyDirection.create("facing", EnumFacing.Plane.HORIZONTAL); - - public SimpleLinePaintBlock(String name, String category, PaintColour colour) { - super(name, category, new int[]{0}, false, colour); - this.setDefaultState(this.blockState.getBaseState().withProperty(FACING, EnumFacing.NORTH)); - this.setCreativeTab(FurenikusRoads.tab_paint_lines); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - return this.getDefaultState().withProperty(FACING, placer.getHorizontalFacing()); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumFacing)state.getValue(FACING)).getIndex(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - EnumFacing enumfacing = EnumFacing.getFront(meta); - if (enumfacing == EnumFacing.DOWN || enumfacing == EnumFacing.UP) { - return this.getDefaultState().withProperty(FACING, EnumFacing.NORTH); - } - return this.getDefaultState().withProperty(FACING, enumfacing); - } - - @Override - protected BlockStateContainer createBlockState() { - IUnlistedProperty[] unlistedProperties = new IUnlistedProperty[] {}; - return new ExtendedBlockState(this, new IProperty[] {FACING}, unlistedProperties); - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/WallPaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/WallPaintBlock.java deleted file mode 100644 index 9cb0a72c..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/WallPaintBlock.java +++ /dev/null @@ -1,132 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint; - -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumRotatable; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class WallPaintBlock extends PaintBlockBase implements IMetaBlockName { - - public static final PropertyEnum ROTATE_ID = PropertyEnum.create("wall_paint", EnumRotatable.class); - - public WallPaintBlock(String name, String category, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, category, coreMetas, dynamic, colour); - setDefaultState(this.blockState.getBaseState().withProperty(ROTATE_ID, EnumRotatable.FLAT_NORTH)); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - if (meta < 8) { - if (facing == EnumFacing.UP) { - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_NORTH); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_EAST); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_SOUTH); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_WEST); } - } - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_NORTH); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_EAST); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_SOUTH); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_WEST); } - } else { - if (facing == EnumFacing.UP) { - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_NORTH_2); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_EAST_2); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_SOUTH_2); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_WEST_2); } - } - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_NORTH_2); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_EAST_2); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_SOUTH_2); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_WEST_2); } - } - - return super.getStateForPlacement(world, pos, facing, hitX, hitY, hitZ, meta, placer, hand); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {ROTATE_ID}); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.byMetadata(meta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumRotatable)state.getValue(ROTATE_ID)).getMetadata(); - } - - @SideOnly(Side.CLIENT) - @Override - public void getSubBlocks(CreativeTabs tab, NonNullList items) { - items.add(new ItemStack(this, 1, 0)); - items.add(new ItemStack(this, 1, 8)); - } - - public ItemStack getPickBlock(IBlockState state, RayTraceResult target, World world, BlockPos pos, EntityPlayer player) { - int meta = getMetaFromState(state); - - if (meta < 8) { return new ItemStack(this, 1, 0); } - return new ItemStack(this, 1, 8); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { - int meta = getMetaFromState(state); - if (meta < 4 || (meta > 7 && meta < 12)) { - return new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(source, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(source, pos)+0.0625, 1.0D); - } - if (meta == 4 || meta == 12) { return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 1.0D, 0.0625D); } - if (meta == 5 || meta == 13) { return new AxisAlignedBB(0.9375D, 0.0D, 0.0D, 1.0D, 1.0D, 1.0D); } - if (meta == 6 || meta == 14) { return new AxisAlignedBB(0.0D, 0.0D, 0.9375D, 1.0D, 1.0D, 1.0D); } - if (meta == 7 || meta == 15) { return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 0.0625D, 1.0D, 1.0D); } - - return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.0625, 1.0D); - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - double offset = 0.0; - if (meta < 4 || (meta > 7 && meta < 12)) { - offset = 1.0 - getBlockBelowHeight(worldIn, pos); - } - return new Vec3d(0, -offset, 0); - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 8, new ModelResourceLocation(getRegistryName(), "inventory_2")); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/Custom1x2PaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/Custom1x2PaintBlock.java deleted file mode 100644 index 4465e3ca..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/Custom1x2PaintBlock.java +++ /dev/null @@ -1,110 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint.customs; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; - -import com.silvaniastudios.roads.blocks.enums.EnumTwoLengthConnectable; -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class Custom1x2PaintBlock extends CustomPaintBlock { - - public static final PropertyEnum CONNECT = PropertyEnum.create("position_rotation", EnumTwoLengthConnectable.class); - - private boolean horizontal = false; - - public Custom1x2PaintBlock(String name, String localName, PaintGrid[] grids, String category, PaintColour colour, boolean horizontal) { - super(name, localName, EnumPaintType.MULTI_2x1, grids, category, new int[] {0}, colour); - this.horizontal = horizontal; - this.setDefaultState(this.blockState.getBaseState().withProperty(CONNECT, EnumTwoLengthConnectable.n1)); - } - - public Custom1x2PaintBlock(String name, PaintGrid[] grids, String category, PaintColour colour) { - super(name, EnumPaintType.MULTI_2x1, grids, category, new int[] {0}, colour, FurenikusRoads.tab_paint_icons); - this.setDefaultState(this.blockState.getBaseState().withProperty(CONNECT, EnumTwoLengthConnectable.n1)); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - EnumFacing placerFacing = placer.getHorizontalFacing(); - int returnMeta = meta; - - if (placerFacing.equals(EnumFacing.EAST)) { returnMeta = meta + 1; } - if (placerFacing.equals(EnumFacing.SOUTH)) { returnMeta = meta + 2; } - if (placerFacing.equals(EnumFacing.WEST)) { returnMeta = meta + 3; } - - IBlockState northBlock = world.getBlockState(pos.offset(EnumFacing.NORTH)); - IBlockState eastBlock = world.getBlockState(pos.offset(EnumFacing.EAST)); - IBlockState southBlock = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - IBlockState westBlock = world.getBlockState(pos.offset(EnumFacing.WEST)); - - if (horizontal) { //Change the checking directions for horizontal placement - southBlock = westBlock; - westBlock = northBlock; - northBlock = eastBlock; - eastBlock = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - } - - if (placerFacing.equals(EnumFacing.NORTH)) { - if (southBlock.getBlock() instanceof Custom1x2PaintBlock) { - if (getMetaFromState(southBlock) == 0) { returnMeta = 4; } - } else if (northBlock.getBlock() instanceof Custom1x2PaintBlock) { - if (getMetaFromState(northBlock) == 4) { returnMeta = 0; } - } - } - - if (placerFacing.equals(EnumFacing.EAST)) { - if (westBlock.getBlock() instanceof Custom1x2PaintBlock) { - if (getMetaFromState(westBlock) == 1) { returnMeta = 5; } - } else if (eastBlock.getBlock() instanceof Custom1x2PaintBlock) { - if (getMetaFromState(eastBlock) == 5) { returnMeta = 1; } - } - } - - if (placerFacing.equals(EnumFacing.SOUTH)) { - if (northBlock.getBlock() instanceof Custom1x2PaintBlock) { - if (getMetaFromState(northBlock) == 2) { returnMeta = 6; } - } else if (southBlock.getBlock() instanceof Custom1x2PaintBlock) { - if (getMetaFromState(southBlock) == 6) { returnMeta = 2; } - } - } - - if (placerFacing.equals(EnumFacing.WEST)) { - if (eastBlock.getBlock() instanceof Custom1x2PaintBlock) { - if (getMetaFromState(eastBlock) == 3) { returnMeta = 7; } - } else if (westBlock.getBlock() instanceof Custom1x2PaintBlock) { - if (getMetaFromState(westBlock) == 7) { returnMeta = 3; } - } - } - return this.getDefaultState().withProperty(CONNECT, EnumTwoLengthConnectable.byMetadata(returnMeta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return state.getValue(CONNECT).getMetadata(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(CONNECT, EnumTwoLengthConnectable.byMetadata(meta)); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {CONNECT}); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/Custom1x3PaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/Custom1x3PaintBlock.java deleted file mode 100644 index 946b9088..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/Custom1x3PaintBlock.java +++ /dev/null @@ -1,117 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint.customs; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumThreeLengthConnectable; -import com.silvaniastudios.roads.blocks.enums.EnumTwoLengthConnectable; -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class Custom1x3PaintBlock extends CustomPaintBlock { - - public static final PropertyEnum CONNECT = PropertyEnum.create("position_rotation", EnumThreeLengthConnectable.class); - - private boolean horizontal = false; - - public Custom1x3PaintBlock(String name, String localName, PaintGrid[] grids, String category, PaintColour colour, boolean horizontal) { - super(name, localName, EnumPaintType.MULTI_3x1, grids, category, new int[] {0}, colour); - this.horizontal = horizontal; - this.setDefaultState(this.blockState.getBaseState().withProperty(CONNECT, EnumThreeLengthConnectable.NORTH_BOTTOM)); - } - - public Custom1x3PaintBlock(String name, PaintGrid[] grids, String category, PaintColour colour) { - super(name, EnumPaintType.MULTI_3x1, grids, category, new int[] {0}, colour, FurenikusRoads.tab_paint_icons); - this.setDefaultState(this.blockState.getBaseState().withProperty(CONNECT, EnumThreeLengthConnectable.NORTH_BOTTOM)); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - EnumFacing placerFacing = placer.getHorizontalFacing(); - int returnMeta = meta; - - if (placerFacing.equals(EnumFacing.EAST)) { returnMeta = meta + 1; } - if (placerFacing.equals(EnumFacing.SOUTH)) { returnMeta = meta + 2; } - if (placerFacing.equals(EnumFacing.WEST)) { returnMeta = meta + 3; } - - IBlockState northBlock = world.getBlockState(pos.offset(EnumFacing.NORTH)); - IBlockState eastBlock = world.getBlockState(pos.offset(EnumFacing.EAST)); - IBlockState southBlock = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - IBlockState westBlock = world.getBlockState(pos.offset(EnumFacing.WEST)); - - if (horizontal) { //Change the checking directions for horizontal placement - southBlock = westBlock; - westBlock = northBlock; - northBlock = eastBlock; - eastBlock = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - } - - if (placerFacing.equals(EnumFacing.NORTH)) { - if (southBlock.getBlock() instanceof Custom1x3PaintBlock) { - if (getMetaFromState(southBlock) == 0) { returnMeta = 4; } - if (getMetaFromState(southBlock) == 4) { returnMeta = 8; } - } else if (northBlock.getBlock() instanceof Custom1x3PaintBlock) { - if (getMetaFromState(northBlock) == 8) { returnMeta = 4; } - if (getMetaFromState(northBlock) == 4) { returnMeta = 0; } - } - } - - if (placerFacing.equals(EnumFacing.EAST)) { - if (westBlock.getBlock() instanceof Custom1x3PaintBlock) { - if (getMetaFromState(westBlock) == 1) { returnMeta = 5; } - if (getMetaFromState(westBlock) == 5) { returnMeta = 9; } - } else if (eastBlock.getBlock() instanceof Custom1x3PaintBlock) { - if (getMetaFromState(eastBlock) == 9) { returnMeta = 5; } - if (getMetaFromState(eastBlock) == 5) { returnMeta = 1; } - } - } - - if (placerFacing.equals(EnumFacing.SOUTH)) { - if (northBlock.getBlock() instanceof Custom1x3PaintBlock) { - if (getMetaFromState(northBlock) == 2) { returnMeta = 6; } - if (getMetaFromState(northBlock) == 6) { returnMeta = 10; } - } else if (southBlock.getBlock() instanceof Custom1x3PaintBlock) { - if (getMetaFromState(southBlock) == 10) { returnMeta = 6; } - if (getMetaFromState(southBlock) == 6) { returnMeta = 2; } - } - } - - if (placerFacing.equals(EnumFacing.WEST)) { - if (eastBlock.getBlock() instanceof Custom1x3PaintBlock) { - if (getMetaFromState(eastBlock) == 3) { returnMeta = 7; } - if (getMetaFromState(eastBlock) == 7) { returnMeta = 11; } - } else if (westBlock.getBlock() instanceof Custom1x3PaintBlock) { - if (getMetaFromState(westBlock) == 11) { returnMeta = 7; } - if (getMetaFromState(westBlock) == 7) { returnMeta = 3; } - } - } - return this.getDefaultState().withProperty(CONNECT, EnumThreeLengthConnectable.byMetadata(returnMeta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return state.getValue(CONNECT).getIndex(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(CONNECT, EnumThreeLengthConnectable.byMetadata(meta)); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {CONNECT}); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/Custom1x4PaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/Custom1x4PaintBlock.java deleted file mode 100644 index dd476eaa..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/Custom1x4PaintBlock.java +++ /dev/null @@ -1,109 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint.customs; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumFourLengthConnectable; - -import com.silvaniastudios.roads.blocks.paint.customs.CustomPaintBlock; -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.Item; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class Custom1x4PaintBlock extends CustomPaintBlock { - - public static final PropertyEnum CONNECT = PropertyEnum.create("position_rotation", EnumFourLengthConnectable.class); - - private boolean horizontal = false; - - public Custom1x4PaintBlock(String name, String localName, PaintGrid[] grids, String category, PaintColour colour, boolean horizontal) { - super(name, localName, EnumPaintType.MULTI_4x1, grids, category, new int[] {0}, colour); - this.horizontal = horizontal; - this.setDefaultState(this.blockState.getBaseState().withProperty(CONNECT, EnumFourLengthConnectable.NORTH_TOP)); - } - - public Custom1x4PaintBlock(String name, PaintGrid[] grids, String category, PaintColour colour, boolean icon) { - super(name, EnumPaintType.MULTI_4x1, grids, category, new int[] {0}, colour, icon ? FurenikusRoads.tab_paint_icons : FurenikusRoads.tab_paint_junction); - this.setDefaultState(this.blockState.getBaseState().withProperty(CONNECT, EnumFourLengthConnectable.NORTH_TOP)); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - EnumFacing placerFacing = placer.getHorizontalFacing(); - int placeMeta = 0; - - IBlockState northBlock = world.getBlockState(pos.offset(EnumFacing.NORTH)); - IBlockState eastBlock = world.getBlockState(pos.offset(EnumFacing.EAST)); - IBlockState southBlock = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - IBlockState westBlock = world.getBlockState(pos.offset(EnumFacing.WEST)); - - if (placerFacing.equals(EnumFacing.NORTH)) { placeMeta = 3; } - if (placerFacing.equals(EnumFacing.EAST)) { placeMeta = 7; } - if (placerFacing.equals(EnumFacing.SOUTH)) { placeMeta = 11; } - if (placerFacing.equals(EnumFacing.WEST)) { placeMeta = 15; } - - if (horizontal) { //Change the checking directions for horizontal placement - southBlock = westBlock; - westBlock = northBlock; - northBlock = eastBlock; - eastBlock = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - } - - if (placerFacing.equals(EnumFacing.NORTH) || placerFacing.equals(EnumFacing.SOUTH)) { - if (southBlock.getBlock().getRegistryName().equals(this.getRegistryName())) { - int southMeta = getMetaFromState(southBlock); - if (southMeta < 11 && southMeta > 7) { placeMeta = southMeta + 1; } - if (southMeta < 4 && southMeta > 0) { placeMeta = southMeta - 1; } - - } - if (northBlock.getBlock().getRegistryName().equals(this.getRegistryName())) { - int northMeta = getMetaFromState(northBlock); - if (northMeta < 3) { placeMeta = northMeta + 1; } - if (northMeta < 12 && northMeta > 8) { placeMeta = northMeta - 1; } - - } - } - - if (placerFacing.equals(EnumFacing.EAST) || placerFacing.equals(EnumFacing.WEST)) { - if (westBlock.getBlock().getRegistryName().equals(this.getRegistryName())) { - int westMeta = getMetaFromState(westBlock); - if (westMeta < 15 && westMeta > 11) { placeMeta = westMeta + 1; } - if (westMeta < 8 && westMeta > 4) { placeMeta = westMeta - 1; } - - } - if (eastBlock.getBlock().getRegistryName().equals(this.getRegistryName())) { - int eastMeta = getMetaFromState(eastBlock); - if (eastMeta < 7 && eastMeta > 3) { placeMeta = eastMeta + 1; } - if (eastMeta < 16 && eastMeta > 12) { placeMeta = eastMeta - 1; } - - } - } - return this.getDefaultState().withProperty(CONNECT, EnumFourLengthConnectable.byMetadata(placeMeta)); //TODO - } - - @Override - public int getMetaFromState(IBlockState state) { - return state.getValue(CONNECT).getIndex(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(CONNECT, EnumFourLengthConnectable.byMetadata(meta)); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {CONNECT}); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/CustomMetaPaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/CustomMetaPaintBlock.java deleted file mode 100644 index ed6fb13e..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/CustomMetaPaintBlock.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint.customs; - -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; - -public class CustomMetaPaintBlock extends CustomPaintBlock { - - public static final PropertyEnum META_ID = PropertyEnum.create("meta", EnumMeta.class); - - public CustomMetaPaintBlock(String name, String localName, EnumPaintType paintType, PaintGrid[] grids, String category, int[] subBlocks, PaintColour colour) { - super(name, localName, paintType, grids, category, subBlocks, colour); - } - - public CustomMetaPaintBlock(String name, EnumPaintType paintType, PaintGrid[] grids, String category, int[] subBlocks, PaintColour colour, CreativeTabs tab) { - super(name, paintType, grids, category, subBlocks, colour, tab); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - int placedMeta = 0; - - if (placer.getHorizontalFacing().equals(EnumFacing.NORTH)) { placedMeta = meta; } - if (placer.getHorizontalFacing().equals(EnumFacing.EAST)) { placedMeta = meta + 1; } - if (placer.getHorizontalFacing().equals(EnumFacing.SOUTH)) { placedMeta = meta + 2; } - if (placer.getHorizontalFacing().equals(EnumFacing.WEST)) { placedMeta = meta + 3; } - - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(placedMeta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return (state.getValue(META_ID)).getMetadata(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(meta)); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {META_ID}); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/CustomPaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/CustomPaintBlock.java deleted file mode 100644 index ff62b402..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/CustomPaintBlock.java +++ /dev/null @@ -1,115 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint.customs; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; - -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; -import com.silvaniastudios.roads.blocks.paint.PaintBlockCustomRenderBase; -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyDirection; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; - -public class CustomPaintBlock extends PaintBlockCustomRenderBase implements IMetaBlockName, ICustomBlock { - - public static final PropertyDirection FACING = PropertyDirection.create("facing", EnumFacing.Plane.HORIZONTAL); - - private PaintGrid[] paintGrids; - private String localizedName; - private boolean isInternal = false; - private EnumPaintType paintType; - - public CustomPaintBlock(String name, String localName, EnumPaintType paintType, PaintGrid[] grids, String category, int[] subBlocks, PaintColour colour) { - super(name, category, subBlocks, false, colour); - this.paintGrids = grids; - this.localizedName = localName; - this.paintType = paintType; - this.setCreativeTab(FurenikusRoads.tab_paint_customs); - } - - public CustomPaintBlock(String name, EnumPaintType paintType, PaintGrid[] grids, String category, int[] subBlocks, PaintColour colour, CreativeTabs tab) { - super(name, category, subBlocks, false, colour); - this.paintGrids = grids; - this.paintType = paintType; - this.setCreativeTab(tab); - this.isInternal = true; - } - - public String getInternalName() { - return name; - } - - @Override - public PaintGrid getGrid(int id) { - return paintGrids[id]; - } - - public String getLocalName() { - return localizedName; - } - public boolean isInternal() { return isInternal; } - public EnumPaintType getPaintType() { return paintType; } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - return this.getDefaultState().withProperty(FACING, placer.getHorizontalFacing()); - } - - @Override - public int getMetaFromState(IBlockState state) { - return (state.getValue(FACING)).getIndex(); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - EnumFacing enumfacing = EnumFacing.getFront(meta); - if (enumfacing == EnumFacing.DOWN || enumfacing == EnumFacing.UP) { - return this.getDefaultState().withProperty(FACING, EnumFacing.NORTH); - } - return this.getDefaultState().withProperty(FACING, enumfacing); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {FACING}); - } - - public enum EnumPaintType implements IStringSerializable { - ICON_1x1("icon_1x1"), - WALL_ICON_1x1("wall_icon_1x1"), - MULTI_2x1("multi_2x1"), - MULTI_3x1("multi_3x1"), - MULTI_4x1("multi_4x1"), - LARGE_TEXT("large_text"); - - private final String name; - - EnumPaintType(String name) { - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public static EnumPaintType getFromString(String in) { - if (in.equalsIgnoreCase(ICON_1x1.getName()) || in.equalsIgnoreCase("1x1")) { return ICON_1x1; } - if (in.equalsIgnoreCase(WALL_ICON_1x1.getName())) { return WALL_ICON_1x1; } - if (in.equalsIgnoreCase(MULTI_2x1.getName())) { return MULTI_2x1; } - if (in.equalsIgnoreCase(MULTI_3x1.getName())) { return MULTI_3x1; } - if (in.equalsIgnoreCase(MULTI_4x1.getName())) { return MULTI_4x1; } - if (in.equalsIgnoreCase(LARGE_TEXT.getName())) { return LARGE_TEXT; } - - return ICON_1x1; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/CustomPaintWallBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/CustomPaintWallBlock.java deleted file mode 100644 index 3a25058e..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/CustomPaintWallBlock.java +++ /dev/null @@ -1,100 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint.customs; - -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumRotatable; -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; - -public class CustomPaintWallBlock extends CustomPaintBlock { - - public static final PropertyEnum ROTATE_ID = PropertyEnum.create("wall_paint", EnumRotatable.class); - - public CustomPaintWallBlock(String name, String localName, PaintGrid[] grids, String category, int[] subMetas, PaintColour colour) { - super(name, localName, EnumPaintType.WALL_ICON_1x1, grids, category, subMetas, colour); - } - - public CustomPaintWallBlock(String name, PaintGrid[] grids, String category, int[] subMetas, PaintColour colour, CreativeTabs tab) { - super(name, EnumPaintType.WALL_ICON_1x1, grids, category, subMetas, colour, tab); - this.setCreativeTab(tab); - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - if (meta < 8) { - if (facing == EnumFacing.UP) { - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_NORTH); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_EAST); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_SOUTH); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_WEST); } - } - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_NORTH); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_EAST); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_SOUTH); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_WEST); } - } else { - if (facing == EnumFacing.UP) { - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_NORTH_2); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_EAST_2); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_SOUTH_2); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FLAT_WEST_2); } - } - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_NORTH_2); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_EAST_2); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_SOUTH_2); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.FACE_WEST_2); } - } - - return super.getStateForPlacement(world, pos, facing, hitX, hitY, hitZ, meta, placer, hand); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {ROTATE_ID}); - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState().withProperty(ROTATE_ID, EnumRotatable.byMetadata(meta)); - } - - @Override - public int getMetaFromState(IBlockState state) { - return ((EnumRotatable)state.getValue(ROTATE_ID)).getMetadata(); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { - int meta = getMetaFromState(state); - if (meta < 4 || (meta > 7 && meta < 12)) { - return new AxisAlignedBB(0.0D, -1+getBlockBelowHeight(source, pos), 0.0D, 1.0D, -1+getBlockBelowHeight(source, pos)+0.0625, 1.0D); - } - if (meta == 4 || meta == 12) { return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 1.0D, 0.0625D); } - if (meta == 5 || meta == 13) { return new AxisAlignedBB(0.9375D, 0.0D, 0.0D, 1.0D, 1.0D, 1.0D); } - if (meta == 6 || meta == 14) { return new AxisAlignedBB(0.0D, 0.0D, 0.9375D, 1.0D, 1.0D, 1.0D); } - if (meta == 7 || meta == 15) { return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 0.0625D, 1.0D, 1.0D); } - - return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.0625, 1.0D); - } - - @Override - public Vec3d getOffset(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - int meta = getMetaFromState(state); - double offset = 0.0; - if (meta < 4 || (meta > 7 && meta < 12)) { - offset = 1.0 - getBlockBelowHeight(worldIn, pos); - } - return new Vec3d(0, -offset, 0); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/ICustomBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/ICustomBlock.java deleted file mode 100644 index 69902d4d..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/customs/ICustomBlock.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint.customs; - -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public interface ICustomBlock { - - @SideOnly(Side.CLIENT) - PaintGrid getGrid(int id); -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/properties/PaintGrid.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/properties/PaintGrid.java deleted file mode 100644 index abcc23ad..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/properties/PaintGrid.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint.properties; - -public class PaintGrid { - - protected boolean[][] grid; - - public static PaintGrid EMPTY = empty(); - - public PaintGrid(short[][] gridIn) { - grid = toBoolean(gridIn); - } - - public PaintGrid(boolean[][] gridIn) { - grid = gridIn; - } - - private boolean[][] toBoolean (short[][] input) { - boolean[][] out = new boolean[input.length][input.length]; - - for (int i = 0; i < input.length; i++) { - for (int j = 0; j < input.length; j++) { - out[i][j] = input[j][i] != 0; - } - } - - return out; - } - - public boolean[][] getGrid() { - return grid; - } - - public int size() { - return grid.length; - } - - public static PaintGrid empty() { - boolean[][] arr = new boolean[16][16]; - - return new PaintGrid(arr); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/properties/UnlistedPropertyConnection.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/properties/UnlistedPropertyConnection.java deleted file mode 100644 index 3b97a019..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/properties/UnlistedPropertyConnection.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint.properties; - -import net.minecraftforge.common.property.IUnlistedProperty; - -public class UnlistedPropertyConnection implements IUnlistedProperty { - - private final String name; - - public UnlistedPropertyConnection(String name) { - this.name = name; - } - - @Override - public String getName() { - return name; - } - - @Override - public boolean isValid(Boolean val) { - return true; - } - - @Override - public Class getType() { - return Boolean.class; - } - - @Override - public String valueToString(Boolean value) { - return value.toString(); - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/uniques/ChevronIconPaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/uniques/ChevronIconPaintBlock.java deleted file mode 100644 index 163cc614..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/uniques/ChevronIconPaintBlock.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint.uniques; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; - -import com.silvaniastudios.roads.blocks.paint.customs.CustomMetaPaintBlock; -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import net.minecraft.block.Block; -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; - -public class ChevronIconPaintBlock extends CustomMetaPaintBlock implements IMetaBlockName { - - public ChevronIconPaintBlock(String name, PaintGrid[] grids, String category, PaintColour colour) { - super(name, EnumPaintType.ICON_1x1, grids, category, new int[] {0, 8}, colour, FurenikusRoads.tab_paint_junction); - setDefaultState(this.blockState.getBaseState().withProperty(META_ID, EnumMeta.id0)); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } - - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - int placedMeta = 0; - - if (placer.getHorizontalFacing().equals(EnumFacing.NORTH)) { placedMeta = meta; } - if (placer.getHorizontalFacing().equals(EnumFacing.EAST)) { placedMeta = meta + 1; } - if (placer.getHorizontalFacing().equals(EnumFacing.SOUTH)) { placedMeta = meta + 2; } - if (placer.getHorizontalFacing().equals(EnumFacing.WEST)) { placedMeta = meta + 3; } - - IBlockState northBlock = world.getBlockState(pos.offset(EnumFacing.NORTH)); - IBlockState eastBlock = world.getBlockState(pos.offset(EnumFacing.EAST)); - IBlockState southBlock = world.getBlockState(pos.offset(EnumFacing.SOUTH)); - IBlockState westBlock = world.getBlockState(pos.offset(EnumFacing.WEST)); - - Block leftBlock = westBlock.getBlock(); - Block rightBlock = eastBlock.getBlock(); - int rot = 0; - - boolean checkLeft = false; - boolean checkRight = false; - - if (this.getUnlocalizedName().contains("_chevron_mid")) { checkLeft = true; checkRight = true; } - if (this.getUnlocalizedName().contains("_chevron_mid_left")) { checkLeft = true; } - if (this.getUnlocalizedName().contains("_chevron_mid_right")) { checkRight = true; } - - if (placer.getHorizontalFacing().equals(EnumFacing.EAST)) { - leftBlock = northBlock.getBlock(); - rightBlock = southBlock.getBlock(); - rot = 1; - } - - if (placer.getHorizontalFacing().equals(EnumFacing.SOUTH)) { - leftBlock = eastBlock.getBlock(); - rightBlock = westBlock.getBlock(); - rot = 2; - } - - if (placer.getHorizontalFacing().equals(EnumFacing.WEST)) { - leftBlock = southBlock.getBlock(); - rightBlock = northBlock.getBlock(); - rot = 3; - } - - if (leftBlock.getUnlocalizedName().contains("chevron_left_a") && checkLeft) { placedMeta = 0 + rot; } - if (leftBlock.getUnlocalizedName().contains("chevron_left_b") && checkLeft) { placedMeta = 4 + rot; } - if (leftBlock.getUnlocalizedName().contains("chevron_left_a_thin") && checkLeft) { placedMeta = 8 + rot; } - if (leftBlock.getUnlocalizedName().contains("chevron_left_b_thin") && checkLeft) { placedMeta = 12 + rot; } - - if (rightBlock.getUnlocalizedName().contains("chevron_right_a") && checkRight) { placedMeta = 0 + rot; } - if (rightBlock.getUnlocalizedName().contains("chevron_right_b") && checkRight) { placedMeta = 4 + rot; } - if (rightBlock.getUnlocalizedName().contains("chevron_right_a_thin") && checkRight) { placedMeta = 8 + rot; } - if (rightBlock.getUnlocalizedName().contains("chevron_right_b_thin") && checkRight) { placedMeta = 12 + rot; } - - return this.getDefaultState().withProperty(META_ID, EnumMeta.byMetadata(placedMeta)); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/paint/uniques/HatchBoxPaintBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/paint/uniques/HatchBoxPaintBlock.java deleted file mode 100644 index 1aef046f..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/paint/uniques/HatchBoxPaintBlock.java +++ /dev/null @@ -1,83 +0,0 @@ -package com.silvaniastudios.roads.blocks.paint.uniques; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.PaintColour; - -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import net.minecraft.block.Block; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class HatchBoxPaintBlock extends PaintBlockBase implements IMetaBlockName { - - public static final PropertyBool NORTH = PropertyBool.create("north"); - public static final PropertyBool EAST = PropertyBool.create("east"); - public static final PropertyBool SOUTH = PropertyBool.create("south"); - public static final PropertyBool WEST = PropertyBool.create("west"); - - public HatchBoxPaintBlock(String name, String category, int[] coreMetas, boolean dynamic, PaintColour colour) { - super(name, category, coreMetas, dynamic, colour); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(NORTH, false) - .withProperty(EAST, false) - .withProperty(SOUTH, false) - .withProperty(WEST, false)); - this.setCreativeTab(FurenikusRoads.tab_paint_icons); - } - - @Override - public int getMetaFromState(IBlockState state) { - return 0; - } - - @Override - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState(); - } - - @Override - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {NORTH, EAST, SOUTH, WEST}); - } - - public boolean canConnectTo(IBlockAccess worldIn, BlockPos pos, EnumFacing facing) { - IBlockState state = worldIn.getBlockState(pos); - Block block = state.getBlock(); - return block instanceof HatchBoxPaintBlock; - } - - private boolean canLineConnectTo(IBlockAccess world, BlockPos pos, EnumFacing facing) { - BlockPos offset = pos.offset(facing); - return canConnectTo(world, offset, facing.getOpposite()) || canConnectTo(world, offset.offset(EnumFacing.DOWN), facing.getOpposite()) || canConnectTo(world, offset.offset(EnumFacing.UP), facing.getOpposite()); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess worldIn, BlockPos pos) { - return state.withProperty(NORTH, canLineConnectTo(worldIn, pos, EnumFacing.NORTH)) - .withProperty(EAST, canLineConnectTo(worldIn, pos, EnumFacing.EAST)) - .withProperty(SOUTH, canLineConnectTo(worldIn, pos, EnumFacing.SOUTH)) - .withProperty(WEST, canLineConnectTo(worldIn, pos, EnumFacing.WEST)); - } - - @SideOnly(Side.CLIENT) - @Override - public void initModel() { - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(this), 0, new ModelResourceLocation(getRegistryName(), "inventory")); - } - - @Override - public String getSpecialName(ItemStack stack) { - return stack.getItemDamage() + ""; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/FREnergyStorage.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/FREnergyStorage.java deleted file mode 100644 index 64cab543..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/FREnergyStorage.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities; - -import net.minecraft.nbt.NBTTagCompound; -import net.minecraftforge.common.util.INBTSerializable; -import net.minecraftforge.energy.EnergyStorage; - -public class FREnergyStorage extends EnergyStorage implements INBTSerializable { - - public FREnergyStorage(int capacity, int maxReceive) { - super(capacity, maxReceive); - } - - public void setEnergy(int energy) { - this.energy = energy; - } - - @Override - public NBTTagCompound serializeNBT() { - final NBTTagCompound nbt = new NBTTagCompound(); - - nbt.setInteger("energy", energy); - return nbt; - } - - @Override - public void deserializeNBT(NBTTagCompound nbt) { - if (nbt.hasKey("energy")) { - energy = nbt.getInteger("energy"); - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/InputStackHandler.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/InputStackHandler.java deleted file mode 100644 index f805ad0d..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/InputStackHandler.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities; - -import net.minecraft.item.ItemStack; -import net.minecraft.util.NonNullList; -import net.minecraftforge.items.ItemStackHandler; - -public class InputStackHandler extends ItemStackHandler { - private final ItemStackHandler internalStackHandler; - - public InputStackHandler(ItemStackHandler ish) { - super(); - internalStackHandler = ish; - } - - @Override - public void setSize(int size) { - stacks = NonNullList.withSize(size, ItemStack.EMPTY); - } - - @Override - public void setStackInSlot(int slot, ItemStack stack) { - internalStackHandler.setStackInSlot(slot, stack); - } - - @Override - public int getSlots() { - return internalStackHandler.getSlots(); - } - - @Override - public ItemStack getStackInSlot(int slot) { - return internalStackHandler.getStackInSlot(slot); - } - - @Override - public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - @Override - public ItemStack extractItem(int slot, int amount, boolean simulate) { - return ItemStack.EMPTY; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/InteractableStackHandler.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/InteractableStackHandler.java deleted file mode 100644 index 597cc689..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/InteractableStackHandler.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities; - -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.NonNullList; -import net.minecraftforge.items.ItemStackHandler; - -public class InteractableStackHandler extends ItemStackHandler { - private final ItemStackHandler internalStackHandler; - - private int inputSlots[]; - private int outputSlots[]; - private int fuelSlot = 0; - - public InteractableStackHandler(ItemStackHandler ish, int[] inputSlots, int[] outputSlots, int fuelSlot) { - super(); - internalStackHandler = ish; - this.inputSlots = inputSlots; - this.outputSlots = outputSlots; - this.fuelSlot = fuelSlot; - } - - @Override - public void setSize(int size) { - stacks = NonNullList.withSize(size, ItemStack.EMPTY); - } - - @Override - public void setStackInSlot(int slot, ItemStack stack) { - internalStackHandler.setStackInSlot(slot, stack); - } - - @Override - public int getSlots() { - return internalStackHandler.getSlots(); - } - - @Override - public ItemStack getStackInSlot(int slot) { - return internalStackHandler.getStackInSlot(slot); - } - - @Override - public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - if (slot == fuelSlot && TileEntityFurnace.getItemBurnTime(stack) > 0) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - for (int i = 0; i < inputSlots.length; i++) { - if (inputSlots[i] == slot) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - } - - return stack; - } - - @Override - public ItemStack extractItem(int slot, int amount, boolean simulate) { - for (int i = 0; i < outputSlots.length; i++) { - if (outputSlots[i] == slot) { - return internalStackHandler.extractItem(slot, amount, simulate); - } - } - return ItemStack.EMPTY; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/OutputStackHandler.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/OutputStackHandler.java deleted file mode 100644 index f6fa070a..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/OutputStackHandler.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities; - -import net.minecraft.item.ItemStack; -import net.minecraft.util.NonNullList; -import net.minecraftforge.items.ItemStackHandler; - -public class OutputStackHandler extends ItemStackHandler { - private final ItemStackHandler internalStackHandler; - - public OutputStackHandler(ItemStackHandler ish) { - super(); - internalStackHandler = ish; - } - - @Override - public void setSize(int size) { - stacks = NonNullList.withSize(size, ItemStack.EMPTY); - } - - @Override - public void setStackInSlot(int slot, ItemStack stack) { - internalStackHandler.setStackInSlot(slot, stack); - } - - @Override - public int getSlots() { - return internalStackHandler.getSlots(); - } - - @Override - public ItemStack getStackInSlot(int slot) { - return internalStackHandler.getStackInSlot(slot); - } - - @Override - public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - return stack; - } - - @Override - public ItemStack extractItem(int slot, int amount, boolean simulate) { - return internalStackHandler.extractItem(slot, amount, simulate); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/RoadTEBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/RoadTEBlock.java deleted file mode 100644 index 97b82ed8..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/RoadTEBlock.java +++ /dev/null @@ -1,243 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities; - -import com.google.common.collect.ImmutableList; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.items.ItemWrench; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.client.renderer.block.statemap.DefaultStateMapper; -import net.minecraft.client.renderer.block.statemap.StateMapperBase; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.InventoryHelper; -import net.minecraft.item.Item; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.BlockRenderLayer; -import net.minecraft.util.EnumBlockRenderType; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.IItemHandler; - -public class RoadTEBlock extends Block { - - protected String name; - public static final PropertyEnum ROTATION = PropertyEnum.create("rotation", EnumRotation.class); - public static final PropertyBool FURNACE_ACTIVE = PropertyBool.create("furnace_active"); - public static final PropertyBool BASE_PLATE = PropertyBool.create("base_plate"); - private int guiId = 0; - protected boolean electric; - - public RoadTEBlock(String name, boolean electric, int guiId) { - super(Material.IRON); - this.name = name; - setUnlocalizedName(FurenikusRoads.MODID + "." + name); - setRegistryName(name); - this.setCreativeTab(FurenikusRoads.tab_tools); - this.setHardness(2.5F); - this.setHarvestLevel("pickaxe", 1); - this.guiId = guiId; - this.electric = electric; - } - - @SuppressWarnings("deprecation") - @Override - public IBlockState getStateForPlacement(World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, int meta, EntityLivingBase placer, EnumHand hand) { - if (placer.getHorizontalFacing() == EnumFacing.NORTH) { return this.getDefaultState().withProperty(ROTATION, EnumRotation.north); } - if (placer.getHorizontalFacing() == EnumFacing.EAST) { return this.getDefaultState().withProperty(ROTATION, EnumRotation.east); } - if (placer.getHorizontalFacing() == EnumFacing.SOUTH) { return this.getDefaultState().withProperty(ROTATION, EnumRotation.south); } - if (placer.getHorizontalFacing() == EnumFacing.WEST) { return this.getDefaultState().withProperty(ROTATION, EnumRotation.west); } - return super.getStateForPlacement(world, pos, facing, hitX, hitY, hitZ, meta, placer); - } - - @Override - public void breakBlock(World world, BlockPos pos, IBlockState state) { - TileEntity te = world.getTileEntity(pos); - if (te != null) { - IItemHandler cap = te.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, null); - - for (int i = 0; i < cap.getSlots(); i++) { - ItemStack stack = cap.getStackInSlot(i); - if (stack != ItemStack.EMPTY) { - InventoryHelper.spawnItemStack(world, pos.getX(), pos.getY(), pos.getZ(), stack); - } - } - } - super.breakBlock(world, pos, state); - } - - @Override - public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - if (player.getHeldItem(hand).getItem() instanceof ItemWrench) { - ItemWrench wrench = (ItemWrench) player.getHeldItem(hand).getItem(); - int mode = wrench.getMode(player.getHeldItem(hand)); - if (mode == 0) { - if (state.getValue(ROTATION).equals(RoadTEBlock.EnumRotation.north)) { - world.setBlockState(pos, state.withProperty(ROTATION, EnumRotation.east)); - } - if (state.getValue(ROTATION).equals(RoadTEBlock.EnumRotation.east)) { - world.setBlockState(pos, state.withProperty(ROTATION, EnumRotation.south)); - } - if (state.getValue(ROTATION).equals(RoadTEBlock.EnumRotation.south)) { - world.setBlockState(pos, state.withProperty(ROTATION, EnumRotation.west)); - } - if (state.getValue(ROTATION).equals(RoadTEBlock.EnumRotation.west)) { - world.setBlockState(pos, state.withProperty(ROTATION, EnumRotation.north)); - } - } - - if (mode == 1) { - if (world.getTileEntity(pos) != null && world.getTileEntity(pos) instanceof RoadTileEntity) { - RoadTileEntity te = (RoadTileEntity) world.getTileEntity(pos); - te.hasBasePlate = !te.hasBasePlate; - te.sendUpdates(); - } - } - } else { - openGui(world, pos, player); - } - return true; - } - - public void openGui(World world, BlockPos pos, EntityPlayer player) { - TileEntity te = world.getTileEntity(pos); - if (!world.isRemote) { - if (te != null && te instanceof RoadTileEntity) { - player.openGui(FurenikusRoads.instance, guiId + (electric ? 5 : 0), world, pos.getX(), pos.getY(), pos.getZ()); - } - } - } - - public boolean isElectric() { - return electric; - } - - public boolean hasBasePlate(IBlockAccess world, BlockPos pos) { - if (world.getTileEntity(pos) != null && world.getTileEntity(pos) instanceof RoadTileEntity) { - RoadTileEntity te = (RoadTileEntity) world.getTileEntity(pos); - - return te.hasBasePlate; - } - - return true; - } - - @Override - public boolean hasTileEntity(IBlockState state) { - return true; - } - - public int getMetaFromState(IBlockState state) { - if (state.getValue(ROTATION).equals(RoadTEBlock.EnumRotation.north)) { - return 0; - } else if (state.getValue(ROTATION).equals(RoadTEBlock.EnumRotation.east)) { - return 1; - } else if (state.getValue(ROTATION).equals(RoadTEBlock.EnumRotation.south)) { - return 2; - } else if (state.getValue(ROTATION).equals(RoadTEBlock.EnumRotation.west)) { - return 3; - } - - return 0; - } - - public IBlockState getStateFromMeta(int meta) { - if (meta == 0) { return this.getDefaultState().withProperty(ROTATION, RoadTEBlock.EnumRotation.north); } - if (meta == 1) { return this.getDefaultState().withProperty(ROTATION, RoadTEBlock.EnumRotation.east); } - if (meta == 2) { return this.getDefaultState().withProperty(ROTATION, RoadTEBlock.EnumRotation.south); } - return this.getDefaultState().withProperty(ROTATION, RoadTEBlock.EnumRotation.west); - } - - public void registerItemModel(Item itemBlock) { - FurenikusRoads.proxy.registerItemRenderer(itemBlock, 0, name); - } - - public Item createItemBlock() { - return new ItemBlock(this).setRegistryName(getRegistryName()); - } - - @Override - public EnumBlockRenderType getRenderType(IBlockState state) { - return EnumBlockRenderType.MODEL; - } - - @Override - public BlockRenderLayer getBlockLayer() { - return BlockRenderLayer.CUTOUT; - } - - @SideOnly(Side.CLIENT) - public void initModel() { - StateMapperBase b = new DefaultStateMapper(); - BlockStateContainer bsc = this.getBlockState(); - ImmutableList values = bsc.getValidStates(); - - for(IBlockState state : values) { - ModelResourceLocation mrl = new ModelResourceLocation(state.getBlock().getRegistryName(), b.getPropertyString(state.getProperties())); - - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(state.getBlock()), this.getMetaFromState(state), mrl); - } - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - public static enum EnumRotation implements IStringSerializable { - north("north"), - east("east"), - south("south"), - west("west"); - - private final String name; - - private EnumRotation(String name) { - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public static EnumRotation byMeta(int meta) { - if (meta == 0) { return EnumRotation.north; } - if (meta == 1) { return EnumRotation.east; } - if (meta == 2) { return EnumRotation.south; } - - return EnumRotation.west; - } - } - - public boolean isFurnaceEnabled(IBlockState state, IBlockAccess world, BlockPos pos) { - TileEntity te = world.getTileEntity(pos); - if (te instanceof RoadTileEntity) { - RoadTileEntity tileEntity = (RoadTileEntity) te; - if (tileEntity.fuel_remaining > 0) { - return true; - } - } - return false; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/RoadTileEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/RoadTileEntity.java deleted file mode 100644 index dfdda3cc..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/RoadTileEntity.java +++ /dev/null @@ -1,106 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.network.NetworkManager; -import net.minecraft.network.play.server.SPacketUpdateTileEntity; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.oredict.OreDictionary; - -public class RoadTileEntity extends TileEntity { - - public int fuel_remaining = 0; - public int last_fuel_cap = 0; - - boolean hasBasePlate; - - public RoadTileEntity() {} - - public boolean canInteractWith(EntityPlayer playerIn) { - return !isInvalid() && playerIn.getDistanceSq(pos.add(0.5D, 0.5D, 0.5D)) <= 64D; - } - - public IBlockState getState() { - return world.getBlockState(pos); - } - - public boolean isLoaded() { - return this.hasWorld() && this.hasPosition() ? this.getWorld().isBlockLoaded(this.getPos()) : false; - } - - public boolean hasPosition() { - return this.pos != null && this.pos != BlockPos.ORIGIN; - } - - public void sendUpdates() { - this.markDirty(); - - if (this.isLoaded()) { - final IBlockState state = this.getState(); - this.getWorld().notifyBlockUpdate(this.pos, state, state, 3); - } - } - - @Override - public NBTTagCompound writeToNBT(NBTTagCompound nbt) { - super.writeToNBT(nbt); - nbt.setBoolean("base_plate", hasBasePlate); - return writeNBT(nbt); - } - - @Override - public void readFromNBT(NBTTagCompound nbt) { - super.readFromNBT(nbt); - hasBasePlate = nbt.getBoolean("base_plate"); - readNBT(nbt); - } - - @Override - public NBTTagCompound getUpdateTag() { - return this.writeToNBT(new NBTTagCompound()); - } - - public void readNBT(NBTTagCompound nbt) { - } - - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - return nbt; - } - - @Override - public boolean shouldRefresh(World world, BlockPos pos, IBlockState oldState, IBlockState newSate) { - return oldState.getBlock() != newSate.getBlock(); - } - - - @Override - public SPacketUpdateTileEntity getUpdatePacket() { - return new SPacketUpdateTileEntity(getPos(), 0, this.getUpdateTag()); - } - - @Override - public void onDataPacket(NetworkManager net, SPacketUpdateTileEntity pkt) { - super.onDataPacket(net, pkt); - this.readNBT(pkt.getNbtCompound()); - this.getWorld().notifyBlockUpdate(this.pos, this.getState(), this.getState(), 3); - } - - public boolean isDye(ItemStack stack, String name) { - if (!stack.isEmpty()) { - for (int id : OreDictionary.getOreIDs(stack)) { - if (OreDictionary.getOreName(id).equals(name)) { - return true; - } - } - } - return false; - } - - public String formatPosition(BlockPos pos) { - return " X: " + pos.getX() + ", Y: " + pos.getY() + ", Z: " + pos.getZ() + " "; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotBucket.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotBucket.java deleted file mode 100644 index f15fe879..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotBucket.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities; - -import javax.annotation.Nullable; - -import net.minecraft.item.ItemBucket; -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class SlotBucket extends SlotItemHandler { - - public SlotBucket(IItemHandler itemHandler, int index, int xPosition, int yPosition) { - super(itemHandler, index, xPosition, yPosition); - } - - @Override - public boolean isItemValid(@Nullable ItemStack stack) { - return stack.getItem() instanceof ItemBucket; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotFluid.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotFluid.java deleted file mode 100644 index 88e732cb..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotFluid.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities; - -import javax.annotation.Nullable; - -import net.minecraft.item.ItemBucket; -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class SlotFluid extends SlotItemHandler { - - public SlotFluid(IItemHandler itemHandler, int index, int xPosition, int yPosition) { - super(itemHandler, index, xPosition, yPosition); - } - - @Override - public boolean isItemValid(@Nullable ItemStack stack) { - if (stack.getUnlocalizedName().compareTo("item.forge.bucketFilled") == 0) { - return true; - } - return stack.getItem() instanceof ItemBucket; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotFuel.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotFuel.java deleted file mode 100644 index 1552727e..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotFuel.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities; - -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class SlotFuel extends SlotItemHandler { - - public SlotFuel(IItemHandler itemHandler, int index, int xPosition, int yPosition) { - super(itemHandler, index, xPosition, yPosition); - } - - @Override - public boolean isItemValid(ItemStack stack) { - if (TileEntityFurnace.getItemBurnTime(stack) > 0) { - return true; - } - return false; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotOutput.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotOutput.java deleted file mode 100644 index ebea3897..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/SlotOutput.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities; - -import javax.annotation.Nullable; - -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class SlotOutput extends SlotItemHandler { - - public SlotOutput(IItemHandler itemHandler, int index, int xPosition, int yPosition) { - super(itemHandler, index, xPosition, yPosition); - } - - @Override - public boolean isItemValid(@Nullable ItemStack stack) { - return false; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorBlock.java deleted file mode 100644 index f8692cf9..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorBlock.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.compactor; - -import java.util.List; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.RoadTEBlock; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class CompactorBlock extends RoadTEBlock { - - public CompactorBlock(String name, boolean electric) { - super(name, electric, 13); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(ROTATION, RoadTEBlock.EnumRotation.north) - .withProperty(FURNACE_ACTIVE, false) - .withProperty(BASE_PLATE, true)); - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("roads.gui.compactor.tooltip_1")); - } - - @Override - public void openGui(World world, BlockPos pos, EntityPlayer player) { - TileEntity te = world.getTileEntity(pos); - if (!world.isRemote) { - if (te != null && te instanceof RoadTileEntity) { - player.openGui(FurenikusRoads.instance, (electric ? 14 : 13), world, pos.getX(), pos.getY(), pos.getZ()); - } - } - } - - @Override - public TileEntity createTileEntity(World worldIn, IBlockState state) { - if (electric) { - return new CompactorElectricEntity(); - } - return new CompactorEntity(); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { - return new AxisAlignedBB(0.125D, 0.0D, 0.125D, 0.875D, 0.78D, 0.875D); - } - - @Override - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBoundingBox(state, world, pos); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - return state.withProperty(FURNACE_ACTIVE, isFurnaceEnabled(state, world, pos)).withProperty(BASE_PLATE, hasBasePlate(world, pos)); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {ROTATION, FURNACE_ACTIVE, BASE_PLATE}); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorContainer.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorContainer.java deleted file mode 100644 index fe79fd99..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorContainer.java +++ /dev/null @@ -1,148 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.compactor; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.SlotFuel; -import com.silvaniastudios.roads.blocks.tileentities.SlotOutput; -import com.silvaniastudios.roads.network.ClientGuiUpdatePacket; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.inventory.IContainerListener; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.Slot; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.IItemHandler; - -public class CompactorContainer extends Container { - - public static final int FRAGMENTS = 0; - public static final int ROADS = 1; - public static final int FUEL = 2; - - private boolean isElectric = false; - private int energy; - private int tick; - private int fuel; - private int fuelCap; - private int road_size; - - public CompactorEntity tileEntity; - - - public CompactorContainer(InventoryPlayer invPlayer, CompactorEntity tileEntity, boolean isElectric) { - this.tileEntity = tileEntity; - - IItemHandler itemHandler = this.tileEntity.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, null); - addSlotToContainer(new SlotFragment(itemHandler, FRAGMENTS, 8, 32)); - addSlotToContainer(new SlotOutput(itemHandler, ROADS, 130, 32)); - - if (!isElectric) { addSlotToContainer(new SlotFuel(itemHandler, FUEL, 152, 32)); } - - this.isElectric = isElectric; - addPlayerSlots(invPlayer); - } - - private void addPlayerSlots(IInventory playerInventory) { - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 9; j++) { - int x = 8 + j * 18; - int y = i * 18 + 64; - this.addSlotToContainer(new Slot(playerInventory, j + i * 9 + 9, x, y)); - } - } - - for (int i = 0; i < 9; i++) { - int x = 8 + i * 18; - int y = 58 + 64; - this.addSlotToContainer(new Slot(playerInventory, i, x, y)); - } - } - - @Override - public void detectAndSendChanges() { - super.detectAndSendChanges(); - - for (int i = 0; i < this.listeners.size(); ++i) { - IContainerListener listener = this.listeners.get(i); - if (listener instanceof EntityPlayer) { - if (this.isElectric) { - CompactorElectricEntity cee = (CompactorElectricEntity) tileEntity; - if (this.energy != cee.energy.getEnergyStored()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(0, cee.energy.getEnergyStored()), (EntityPlayerMP) listener); - } - this.energy = cee.energy.getEnergyStored(); - } - if (this.tick != tileEntity.timerCount) { - listener.sendWindowProperty(this, 10, tileEntity.timerCount); - } - if (this.fuel != tileEntity.fuel_remaining) { - listener.sendWindowProperty(this, 11, tileEntity.fuel_remaining); - } - if (this.fuelCap != tileEntity.last_fuel_cap) { - listener.sendWindowProperty(this, 12, tileEntity.last_fuel_cap); - } - if (this.road_size != tileEntity.road_size) { - listener.sendWindowProperty(this, 4, tileEntity.road_size); - } - } - } - - this.tick = tileEntity.timerCount; - this.fuel = tileEntity.fuel_remaining; - this.fuelCap = tileEntity.last_fuel_cap; - this.road_size = tileEntity.road_size; - } - - @SideOnly(Side.CLIENT) - public void updateProgressBar(int id, int data) { - FurenikusRoads.debug(1, "Compactor syncing ID: " + id + ", data: " + data); - if (id == 10) { - tileEntity.timerCount = data; - } - if (id == 11) { - tileEntity.fuel_remaining = data; - } - if (id == 12) { - tileEntity.last_fuel_cap = data; - } - if (id == 4) { - tileEntity.road_size = data; - } - } - - @Override - public boolean canInteractWith(EntityPlayer playerIn) { - return tileEntity.canInteractWith(playerIn); - } - - @Override - public ItemStack transferStackInSlot(EntityPlayer player, int slotId) { - ItemStack stack = ItemStack.EMPTY; - Slot slot = this.inventorySlots.get(slotId); - - if (slot != null && slot.getHasStack()) { - ItemStack stack1 = slot.getStack(); - stack = stack1.copy(); - - if (slotId < tileEntity.inventory.getSlots()) { - if (!this.mergeItemStack(stack1, tileEntity.inventory.getSlots(), this.inventorySlots.size(), true)) { - return ItemStack.EMPTY; - } - } else if (!this.mergeItemStack(stack1, 0, tileEntity.inventory.getSlots(), false)) { - return ItemStack.EMPTY; - } - - if (stack1.isEmpty()) { - slot.putStack(ItemStack.EMPTY); - } else { - slot.onSlotChanged(); - } - } - return stack; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorElectricEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorElectricEntity.java deleted file mode 100644 index 820c6f88..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorElectricEntity.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.compactor; - -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.FREnergyStorage; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumFacing; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.energy.CapabilityEnergy; - -public class CompactorElectricEntity extends CompactorEntity { - - public boolean isProcessing = false; - int consumedEnergy = 0; - - public CompactorElectricEntity() {} - - public FREnergyStorage energy = new FREnergyStorage(RoadsConfig.machine.electricCompactorEnergyStorage, RoadsConfig.machine.electricCompactorEnergyTransferRate) {}; - - public Container createContainer(EntityPlayer player) { - return new CompactorContainer(player.inventory, this, true); - } - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return getCapability(capability, facing) != null; - } - - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return CapabilityEnergy.ENERGY.cast(energy); - } - return super.getCapability(capability, facing); - } - - @Override - public void update() { - if (energy.getEnergyStored() > RoadsConfig.machine.electricCompactorEnergyConsumption) { - //energy per tick - int ept = RoadsConfig.machine.electricCompactorEnergyConsumption / RoadsConfig.machine.electricCompactorTickRate; - if (timerCount < RoadsConfig.machine.electricCompactorTickRate) { - if (shouldTick()) { - isProcessing = true; - timerCount++; - energy.extractEnergy(ept, false); - consumedEnergy += ept; - } else { - isProcessing = false; - timerCount = 0; - } - } else { - //Round up energy usage to config value. eg 1000 usage, at 30 ticks, would only use 990 energy. This uses the other 10. - if (consumedEnergy < RoadsConfig.machine.electricCompactorEnergyConsumption) { - energy.extractEnergy(RoadsConfig.machine.electricCompactorEnergyConsumption - consumedEnergy, false); - } - process(); - - timerCount = 0; - - if (!world.isRemote) { - sendUpdates(); - } - } - } - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("energy")) { - energy.deserializeNBT((NBTTagCompound) nbt.getTag("energy")); - } - super.readNBT(nbt); - - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("energy", energy.serializeNBT()); - return super.writeNBT(nbt); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorEntity.java deleted file mode 100644 index c6c6ec81..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorEntity.java +++ /dev/null @@ -1,164 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.compactor; - -import javax.annotation.Nonnull; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; -import com.silvaniastudios.roads.blocks.tileentities.recipes.CompactorRecipes; -import com.silvaniastudios.roads.blocks.tileentities.recipes.RecipeRegistry; -import com.silvaniastudios.roads.items.ItemFragment; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.inventory.Container; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.ItemStackHandler; - -public class CompactorEntity extends RoadTileEntity implements ITickable, ICapabilityProvider { - - public int timerCount = 0; - public int road_size = 15; - - public CompactorEntity() {} - - public Container createContainer(EntityPlayer player) { - return new CompactorContainer(player.inventory, this, false); - } - - public ItemStackHandler inventory = new ItemStackHandler(3) { - @Override - public boolean isItemValid(int slot, @Nonnull ItemStack stack) { - if (slot == CompactorContainer.FRAGMENTS && stack.getItem() instanceof ItemFragment) { - return true; - } - return false; - } - }; - - public CompactorStackHandler interactable_inv = new CompactorStackHandler(inventory, hasCapability(CapabilityEnergy.ENERGY, null)); - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - return getCapability(capability, facing) != null; - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - if (facing != null) { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(interactable_inv); - } else { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(inventory); - } - } - return super.getCapability(capability, facing); - } - - @Override - public void update() { - if (fuel_remaining > 0) { - fuel_remaining--; - } else if (fuel_remaining <= 0) { - if (!inventory.getStackInSlot(CompactorContainer.FUEL).isEmpty()) { - fuel_remaining = TileEntityFurnace.getItemBurnTime(inventory.getStackInSlot(CompactorContainer.FUEL)); - last_fuel_cap = fuel_remaining; - if (inventory.getStackInSlot(CompactorContainer.FUEL).getItem() == Items.LAVA_BUCKET) { - inventory.setStackInSlot(CompactorContainer.FUEL, new ItemStack(Items.BUCKET)); - } else { - inventory.extractItem(CompactorContainer.FUEL, 1, false); - } - sendUpdates(); - } else { - timerCount = 0; - } - } - - if (timerCount < RoadsConfig.machine.compactorTickRate && fuel_remaining > 0) { - if (shouldTick()) { - timerCount++; - } else { - timerCount = 0; - } - } else { - if (fuel_remaining > 0) { - process(); - } - timerCount = 0; - } - } - - public void process() { - if (!world.isRemote) { - ItemStack in = inventory.getStackInSlot(CompactorContainer.FRAGMENTS); - if (in.getCount() > road_size) { - ItemStack out = inventory.getStackInSlot(CompactorContainer.ROADS); - if (out == ItemStack.EMPTY || out.getCount() < out.getMaxStackSize()) { - ItemStack recipeOut = getRecipeResult(); - if (recipeOut.getCount() > 0) { - if (out == ItemStack.EMPTY || (out.getItem() == recipeOut.getItem() && out.getCount() < out.getMaxStackSize())) { - inventory.extractItem(CompactorContainer.FRAGMENTS, road_size+1, false); - inventory.insertItem(CompactorContainer.ROADS, recipeOut, false); - FurenikusRoads.debug(2, "Compactor at" + formatPosition(pos) + "processing"); - sendUpdates(); - } - } - } - } - } - } - - public boolean shouldTick() { - ItemStack in = inventory.getStackInSlot(CompactorContainer.FRAGMENTS); - if (in.getCount() > road_size) { - ItemStack out = inventory.getStackInSlot(CompactorContainer.ROADS); - if (out.getCount() == 0 || (out.getItem() == getRecipeResult().getItem() && out.getCount() < out.getMaxStackSize())) { - return true; - } - } - return false; - } - - public ItemStack getRecipeResult() { - for (int i = 0; i < RecipeRegistry.compactorRecipes.size(); i++) { - CompactorRecipes recipe = RecipeRegistry.compactorRecipes.get(i); - ItemStack out = recipe.getCraftingResult(inventory, road_size); - if (out.getCount() > 0 && inventory.insertItem(CompactorContainer.ROADS, out, true).getCount() == 0) { - return out; - } - } - return ItemStack.EMPTY; - } - - @Override - public void readNBT(NBTTagCompound nbt) { - fuel_remaining = nbt.getInteger("fuel"); - last_fuel_cap = nbt.getInteger("fuel_last_used"); - road_size = nbt.getInteger("road_size"); - - if (nbt.hasKey("items")) { - inventory.deserializeNBT((NBTTagCompound) nbt.getTag("items")); - } - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setInteger("fuel", fuel_remaining); - nbt.setInteger("fuel_last_used", last_fuel_cap); - nbt.setInteger("road_size", road_size); - - nbt.setTag("items", inventory.serializeNBT()); - return nbt; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorStackHandler.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorStackHandler.java deleted file mode 100644 index cece9b47..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/CompactorStackHandler.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.compactor; - -import com.silvaniastudios.roads.items.ItemFragment; - -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.NonNullList; -import net.minecraftforge.items.ItemStackHandler; - -public class CompactorStackHandler extends ItemStackHandler { - - private final ItemStackHandler internalStackHandler; - boolean electric; - - public CompactorStackHandler(ItemStackHandler ish, boolean electric) { - super(); - this.electric = electric; - internalStackHandler = ish; - } - - @Override - public void setSize(int size) { - stacks = NonNullList.withSize(size, ItemStack.EMPTY); - } - - @Override - public void setStackInSlot(int slot, ItemStack stack) { - internalStackHandler.setStackInSlot(slot, stack); - } - - @Override - public int getSlots() { - return internalStackHandler.getSlots(); - } - - @Override - public ItemStack getStackInSlot(int slot) { - return internalStackHandler.getStackInSlot(slot); - } - - @Override - public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - if (slot == CompactorContainer.FUEL && TileEntityFurnace.getItemBurnTime(stack) > 0 && !electric) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - if (slot == CompactorContainer.FRAGMENTS) { - if (stack.getItem() instanceof ItemFragment) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - } - - return stack; - } - - @Override - public ItemStack extractItem(int slot, int amount, boolean simulate) { - if (slot == CompactorContainer.ROADS) { - return internalStackHandler.extractItem(slot, amount, simulate); - } - return ItemStack.EMPTY; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/SlotFragment.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/SlotFragment.java deleted file mode 100644 index 0a83848b..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/compactor/SlotFragment.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.compactor; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.items.ItemFragment; - -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class SlotFragment extends SlotItemHandler { - - public SlotFragment(IItemHandler itemHandler, int index, int xPosition, int yPosition) { - super(itemHandler, index, xPosition, yPosition); - } - - @Override - public boolean isItemValid(@Nullable ItemStack stack) { - return stack.getItem() instanceof ItemFragment; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherBlock.java deleted file mode 100644 index bda1b22b..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherBlock.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.crusher; - -import java.util.List; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.tileentities.RoadTEBlock; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerBlock; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class CrusherBlock extends RoadTEBlock { - - public static final PropertyBool FURNACE_ACTIVE = PropertyBool.create("furnace_active"); - - public CrusherBlock(String name, boolean electric) { - super(name, electric, 5); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(ROTATION, PaintFillerBlock.EnumRotation.north) - .withProperty(FURNACE_ACTIVE, false)); - } - - @Override - public TileEntity createTileEntity(World worldIn, IBlockState state) { - if (electric) { - return new CrusherElectricEntity(); - } - return new CrusherEntity(); - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("roads.gui.crusher.tooltip_1")); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {ROTATION, FURNACE_ACTIVE, BASE_PLATE}); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - TileEntity te = world.getTileEntity(pos); - if (te instanceof RoadTileEntity) { - RoadTileEntity tileEntity = (RoadTileEntity) te; - if (tileEntity.fuel_remaining > 0) { - return state.withProperty(FURNACE_ACTIVE, true).withProperty(BASE_PLATE, hasBasePlate(world, pos)); - } else { - return state.withProperty(FURNACE_ACTIVE, false).withProperty(BASE_PLATE, hasBasePlate(world, pos)); - } - } - return state; - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { - return new AxisAlignedBB(0.125D, 0.0D, 0.125D, 0.875D, 0.90625D, 0.875D); - } - - @Override - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBoundingBox(state, world, pos); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherContainer.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherContainer.java deleted file mode 100644 index a79e1846..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherContainer.java +++ /dev/null @@ -1,139 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.crusher; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.SlotFuel; -import com.silvaniastudios.roads.blocks.tileentities.SlotOutput; -import com.silvaniastudios.roads.network.ClientGuiUpdatePacket; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.inventory.IContainerListener; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.Slot; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class CrusherContainer extends Container { - - public CrusherEntity tileEntity; - - public static final int INPUT_1 = 0; - public static final int OUTPUT_1 = 1; - public static final int FUEL = 2; - - private boolean isElectric = false; - private int energy; - private int tick; - private int fuel; - private int fuelCap; - - public CrusherContainer(InventoryPlayer invPlayer, CrusherEntity tileEntity, boolean isElectric) { - this.tileEntity = tileEntity; - - IItemHandler itemHandler = this.tileEntity.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, null); - addSlotToContainer(new SlotItemHandler(itemHandler, INPUT_1, 8, 32)); - addSlotToContainer(new SlotOutput(itemHandler, OUTPUT_1, 98, 32)); - if (!isElectric) { addSlotToContainer(new SlotFuel(itemHandler, FUEL, 152, 32)); } - - this.isElectric = isElectric; - addPlayerSlots(invPlayer); - } - - private void addPlayerSlots(IInventory playerInventory) { - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 9; j++) { - int x = 8 + j * 18; - int y = i * 18 + 64; - this.addSlotToContainer(new Slot(playerInventory, j + i * 9 + 9, x, y)); - } - } - - for (int i = 0; i < 9; i++) { - int x = 8 + i * 18; - int y = 58 + 64; - this.addSlotToContainer(new Slot(playerInventory, i, x, y)); - } - } - - @Override - public void detectAndSendChanges() { - super.detectAndSendChanges(); - - for (int i = 0; i < this.listeners.size(); ++i) { - IContainerListener listener = this.listeners.get(i); - if (listener instanceof EntityPlayer) { - if (this.isElectric) { - CrusherElectricEntity cee = (CrusherElectricEntity) tileEntity; - if (this.energy != cee.energy.getEnergyStored()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(0, cee.energy.getEnergyStored()), (EntityPlayerMP) listener); - } - this.energy = cee.energy.getEnergyStored(); - } - if (this.tick != tileEntity.timerCount) { - listener.sendWindowProperty(this, 10, tileEntity.timerCount); - } - if (this.fuel != tileEntity.fuel_remaining) { - listener.sendWindowProperty(this, 11, tileEntity.fuel_remaining); - } - if (this.fuelCap != tileEntity.last_fuel_cap) { - listener.sendWindowProperty(this, 12, tileEntity.last_fuel_cap); - } - } - } - - this.tick = tileEntity.timerCount; - this.fuel = tileEntity.fuel_remaining; - this.fuelCap = tileEntity.last_fuel_cap; - } - - @SideOnly(Side.CLIENT) - public void updateProgressBar(int id, int data) { - FurenikusRoads.debug(1, "Crusher syncing ID: " + id + ", data: " + data); - if (id == 10) { - tileEntity.timerCount = data; - } - if (id == 11) { - tileEntity.fuel_remaining = data; - } - if (id == 12) { - tileEntity.last_fuel_cap = data; - } - } - - @Override - public boolean canInteractWith(EntityPlayer playerIn) { - return tileEntity.canInteractWith(playerIn); - } - - @Override - public ItemStack transferStackInSlot(EntityPlayer player, int slotId) { - ItemStack stack = ItemStack.EMPTY; - Slot slot = this.inventorySlots.get(slotId); - - if (slot != null && slot.getHasStack()) { - ItemStack stack1 = slot.getStack(); - stack = stack1.copy(); - - if (slotId < tileEntity.inventory.getSlots()) { - if (!this.mergeItemStack(stack1, tileEntity.inventory.getSlots(), this.inventorySlots.size(), true)) { - return ItemStack.EMPTY; - } - } else if (!this.mergeItemStack(stack1, 0, tileEntity.inventory.getSlots(), false)) { - return ItemStack.EMPTY; - } - - if (stack1.isEmpty()) { - slot.putStack(ItemStack.EMPTY); - } else { - slot.onSlotChanged(); - } - } - return stack; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherElectricEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherElectricEntity.java deleted file mode 100644 index 9d49d97d..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherElectricEntity.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.crusher; - -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.FREnergyStorage; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; - -public class CrusherElectricEntity extends CrusherEntity implements ITickable, ICapabilityProvider { - - public boolean isProcessing = false; - int consumedEnergy = 0; - - public CrusherElectricEntity() {} - - public FREnergyStorage energy = new FREnergyStorage(RoadsConfig.machine.electricCrusherEnergyStorage, RoadsConfig.machine.electricCrusherEnergyTransferRate) {}; - - public Container createContainer(EntityPlayer player) { - return new CrusherContainer(player.inventory, this, true); - } - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return getCapability(capability, facing) != null; - } - - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return CapabilityEnergy.ENERGY.cast(energy); - } - return super.getCapability(capability, facing); - } - - @Override - public void update() { - if (energy.getEnergyStored() > RoadsConfig.machine.electricCrusherEnergyConsumption) { - //energy per tick - int ept = RoadsConfig.machine.electricCrusherEnergyConsumption / RoadsConfig.machine.electricCrusherTickRate; - if (timerCount < RoadsConfig.machine.electricCrusherTickRate) { - if (shouldTick()) { - isProcessing = true; - timerCount++; - energy.extractEnergy(ept, false); - consumedEnergy += ept; - } else { - isProcessing = false; - timerCount = 0; - } - } else { - //Round up energy usage to config value. eg 1000 usage, at 30 ticks, would only use 990 energy. This uses the other 10. - if (consumedEnergy < RoadsConfig.machine.electricCrusherEnergyConsumption) { - energy.extractEnergy(RoadsConfig.machine.electricCrusherEnergyConsumption - consumedEnergy, false); - } - process(); - - timerCount = 0; - - if (!world.isRemote) { - sendUpdates(); - } - } - } - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("items")) { - inventory.deserializeNBT((NBTTagCompound) nbt.getTag("items")); - } - if (nbt.hasKey("energy")) { - energy.deserializeNBT((NBTTagCompound) nbt.getTag("energy")); - } - - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("items", inventory.serializeNBT()); - nbt.setTag("energy", energy.serializeNBT()); - return nbt; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherEntity.java deleted file mode 100644 index 4756806d..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherEntity.java +++ /dev/null @@ -1,182 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.crusher; - -import javax.annotation.Nonnull; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; -import com.silvaniastudios.roads.blocks.tileentities.recipes.CrusherRecipes; -import com.silvaniastudios.roads.blocks.tileentities.recipes.RecipeRegistry; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.inventory.Container; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.ItemStackHandler; - -public class CrusherEntity extends RoadTileEntity implements ITickable, ICapabilityProvider { - - public int timerCount = 0; - - public CrusherEntity() { - - } - - public ItemStackHandler inventory = new ItemStackHandler(3) { - - @Override - public boolean isItemValid(int slot, @Nonnull ItemStack stack) { - return true; - } - - @Override - protected void onContentsChanged(int slot) { - CrusherEntity.this.markDirty(); - } - }; - - public CrusherStackHandler interactable_inv = new CrusherStackHandler(inventory, hasCapability(CapabilityEnergy.ENERGY, null)); - - public Container createContainer(EntityPlayer player) { - return new CrusherContainer(player.inventory, this, false); - } - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - return getCapability(capability, facing) != null; - } - - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - if (facing != null) { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(interactable_inv); - } else { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(inventory); - } - } - return super.getCapability(capability, facing); - } - - @Override - public void update() { - if (fuel_remaining > 0) { - fuel_remaining--; - } else if (fuel_remaining <= 0) { - if (!inventory.getStackInSlot(CrusherContainer.FUEL).isEmpty()) { - fuel_remaining = TileEntityFurnace.getItemBurnTime(inventory.getStackInSlot(CrusherContainer.FUEL)); - last_fuel_cap = fuel_remaining; - if (inventory.getStackInSlot(2).getItem() == Items.LAVA_BUCKET) { - inventory.setStackInSlot(2, new ItemStack(Items.BUCKET)); - } else { - inventory.extractItem(2, 1, false); - } - sendUpdates(); - } else { - timerCount = 0; - return; - } - } - - if (timerCount < RoadsConfig.machine.crusherTickRate) { - if (shouldTick()) { - timerCount++; - } else { - timerCount = 0; - } - } else { - if (fuel_remaining > 0) { - process(); - } - timerCount = 0; - } - } - - public boolean shouldTick() { - ItemStack itemIn = inventory.getStackInSlot(0); - if (!itemIn.isEmpty()) { - ItemStack itemOut = getRecipes(itemIn); - if (!itemOut.isEmpty()) { - if (inventory.getStackInSlot(1).isEmpty()) { - return true; - } else if (inventory.getStackInSlot(1).getItem() == itemOut.getItem() && (inventory.getStackInSlot(1).getCount() + itemOut.getCount()) <= itemOut.getMaxStackSize()) { - return true; - } - } - } - return false; - } - - public void process() { - if (!world.isRemote) { - FurenikusRoads.debug(2, "Crusher at" + formatPosition(pos) + "processing"); - ItemStack itemIn = inventory.getStackInSlot(0); - - if (!itemIn.isEmpty()) { - ItemStack itemOut = getRecipes(itemIn); - if (!itemOut.isEmpty()) { - if (inventory.getStackInSlot(1).isEmpty()) { - inventory.setStackInSlot(1, itemOut); - itemIn.setCount(itemIn.getCount()-1); - } else if (inventory.getStackInSlot(1).getItem() == itemOut.getItem() && (inventory.getStackInSlot(1).getCount() + itemOut.getCount()) <= itemOut.getMaxStackSize()) { - inventory.getStackInSlot(1).setCount(inventory.getStackInSlot(1).getCount() + itemOut.getCount()); - itemIn.setCount(itemIn.getCount()-1); - } - } - } - } - } - - protected ItemStack getRecipes(ItemStack itemIn) { - for (int i = 0; i < RecipeRegistry.crusherRecipes.size(); i++) { - CrusherRecipes recipe = RecipeRegistry.crusherRecipes.get(i); - if (recipe.test(itemIn)) { - return recipe.getCraftingResult(inventory); - } - } - return ItemStack.EMPTY; - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("items")) { - inventory.deserializeNBT((NBTTagCompound) nbt.getTag("items")); - } - - fuel_remaining = nbt.getInteger("fuel"); - last_fuel_cap = nbt.getInteger("fuel_last_used"); - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("items", inventory.serializeNBT()); - - nbt.setInteger("fuel", fuel_remaining); - nbt.setInteger("fuel_last_used", last_fuel_cap); - return nbt; - } - - @Override - public NBTTagCompound writeToNBT(NBTTagCompound nbt) { - super.writeToNBT(nbt); - return writeNBT(nbt); - } - - @Override - public void readFromNBT(NBTTagCompound nbt) { - super.readFromNBT(nbt); - readNBT(nbt); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherStackHandler.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherStackHandler.java deleted file mode 100644 index 490d5451..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/crusher/CrusherStackHandler.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.crusher; - -import java.util.ArrayList; - -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.RoadBlock; - -import com.silvaniastudios.roads.items.FRItems; -import net.minecraft.init.Blocks; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.NonNullList; -import net.minecraftforge.items.ItemStackHandler; - -public class CrusherStackHandler extends ItemStackHandler { - - private final ItemStackHandler internalStackHandler; - boolean electric; - public ArrayList validInputs = new ArrayList(); - - public CrusherStackHandler(ItemStackHandler ish, boolean electric) { - super(); - this.electric = electric; - internalStackHandler = ish; - - validInputs.add(new ItemStack(Blocks.STONE)); - validInputs.add(new ItemStack(Blocks.COBBLESTONE)); - validInputs.add(new ItemStack(Blocks.GRAVEL)); - validInputs.add(new ItemStack(FRBlocks.generic_blocks, 1, 0)); - validInputs.add(new ItemStack(FRBlocks.generic_blocks, 1, 1)); - validInputs.add(new ItemStack(FRBlocks.generic_blocks, 1, 2)); - validInputs.add(new ItemStack(FRBlocks.generic_blocks, 1, 3)); - } - - @Override - public void setSize(int size) { - stacks = NonNullList.withSize(size, ItemStack.EMPTY); - } - - @Override - public void setStackInSlot(int slot, ItemStack stack) { - internalStackHandler.setStackInSlot(slot, stack); - } - - @Override - public int getSlots() { - return internalStackHandler.getSlots(); - } - - @Override - public ItemStack getStackInSlot(int slot) { - return internalStackHandler.getStackInSlot(slot); - } - - @Override - public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - if (slot == CrusherContainer.FUEL && TileEntityFurnace.getItemBurnTime(stack) > 0 && !electric) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - if (slot == CrusherContainer.INPUT_1) { - //Right now everything* is a block, so we can just check this here for slight performance gainz. - //If we add any items later, then move the valid input for loop out of the scope of this itemblock check. - if (stack.getItem() instanceof ItemBlock) { - ItemBlock ib = (ItemBlock) stack.getItem(); - if (ib.getBlock() instanceof RoadBlock) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - for (int i = 0; i < validInputs.size(); i++) { - if (validInputs.get(i).getItem() == stack.getItem()) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - } - } - - //* Forgot clinker mix was a thing. Handle that one edge case here coz im lazy. - if (stack.getItem() == FRItems.clinker_mix) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - } - - return stack; - } - - @Override - public ItemStack extractItem(int slot, int amount, boolean simulate) { - if (slot == CrusherContainer.OUTPUT_1) { - return internalStackHandler.extractItem(slot, amount, simulate); - } - return ItemStack.EMPTY; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/SlotDistillerFuel.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/SlotDistillerFuel.java deleted file mode 100644 index f68035d6..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/SlotDistillerFuel.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.distiller; - -import javax.annotation.Nullable; - -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class SlotDistillerFuel extends SlotItemHandler { - - public SlotDistillerFuel(IItemHandler itemHandler, int index, int xPosition, int yPosition) { - super(itemHandler, index, xPosition, yPosition); - } - - @Override - public boolean isItemValid(@Nullable ItemStack stack) { - return stack.getItem().equals(Items.LAVA_BUCKET); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/SlotDistillerInput.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/SlotDistillerInput.java deleted file mode 100644 index c8adeeb1..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/SlotDistillerInput.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.distiller; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.tileentities.recipes.RecipeRegistry; -import com.silvaniastudios.roads.blocks.tileentities.recipes.TarDistillerRecipes; - -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class SlotDistillerInput extends SlotItemHandler { - - TarDistillerEntity te; - - public SlotDistillerInput(IItemHandler itemHandler, int index, int xPosition, int yPosition, TarDistillerEntity te) { - super(itemHandler, index, xPosition, yPosition); - this.te = te; - } - - @Override - public boolean isItemValid(@Nullable ItemStack stack) { - for (int i = 0; i < RecipeRegistry.tarDistillerRecipes.size(); i++) { - TarDistillerRecipes tdr = RecipeRegistry.tarDistillerRecipes.get(i); - if (tdr.getInputStack().getItem() == stack.getItem() && tdr.getInputStack().getItemDamage() == stack.getItemDamage()) { - return true; - } - } - return false; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerBlock.java deleted file mode 100644 index ad3c4c44..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerBlock.java +++ /dev/null @@ -1,282 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.distiller; - -import java.util.List; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.tileentities.RoadTEBlock; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenEntity; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidUtil; -import net.minecraftforge.fluids.capability.CapabilityFluidHandler; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; -import net.minecraftforge.items.CapabilityItemHandler; - -public class TarDistillerBlock extends RoadTEBlock { - - public static final PropertyBool FLUID_LEFT = PropertyBool.create("fluid_left"); - public static final PropertyBool FLUID_RIGHT = PropertyBool.create("fluid_right"); - public static final PropertyBool FLUID_TOP = PropertyBool.create("fluid_top"); - public static final PropertyBool FURNACE_ACTIVE = PropertyBool.create("furnace_active"); - - public TarDistillerBlock(String name, boolean electric) { - super(name, electric, 2); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(ROTATION, RoadTEBlock.EnumRotation.north) - .withProperty(FLUID_LEFT, false) - .withProperty(FLUID_RIGHT, false) - .withProperty(FLUID_TOP, false) - .withProperty(FURNACE_ACTIVE, false)); - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("roads.gui.tar_distiller.tooltip_1")); - tooltip.add(I18n.format("roads.gui.tar_distiller.tooltip_2")); - } - - @Override - public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - ItemStack held = player.getHeldItem(EnumHand.MAIN_HAND); - - if (world.getTileEntity(pos) != null && world.getTileEntity(pos) instanceof TarDistillerEntity) { - TarDistillerEntity te = (TarDistillerEntity) world.getTileEntity(pos); - if (held.getItem() == Items.BUCKET) { - - if (te.fluidOutput1.getFluidAmount() >= 1000) { - if (!player.isCreative()) { - if (held.getCount() > 1) { - held.setCount(held.getCount() - 1); - } else { - player.inventory.setInventorySlotContents(player.inventory.currentItem, ItemStack.EMPTY); - } - } - te.fluidOutput1.drain(1000, true); - te.sendUpdates(); - ItemStack fluidBucket = FluidUtil.getFilledBucket(te.fluidOutput1.getFluid()); - if (fluidBucket != null) { - player.addItemStackToInventory(fluidBucket); - } - return true; - } else if (te.fluidOutput2.getFluidAmount() >= 1000) { - if (!player.isCreative()) { - if (held.getCount() > 1) { - held.setCount(held.getCount() - 1); - } else { - player.inventory.setInventorySlotContents(player.inventory.currentItem, ItemStack.EMPTY); - } - } - te.fluidOutput2.drain(1000, true); - te.sendUpdates(); - player.addItemStackToInventory(FluidUtil.getFilledBucket(te.fluidOutput2.getFluid())); - return true; - } else if (te.fluidInput.getFluidAmount() >= 1000) { - if (!player.isCreative()) { - if (held.getCount() > 1) { - held.setCount(held.getCount() - 1); - } else { - player.inventory.setInventorySlotContents(player.inventory.currentItem, ItemStack.EMPTY); - } - } - player.addItemStackToInventory(FluidUtil.getFilledBucket(te.fluidInput.getFluid())); - te.fluidInput.drain(1000, true); - te.sendUpdates(); - return true; - } - } - - if (held.getItem().getUnlocalizedName().compareTo("item.forge.bucketFilled") == 0) { - FluidStack fluidStack = FluidUtil.getFluidContained(held); - if (te.fluidInput.getFluidAmount() + 1000 <= PaintOvenEntity.FILLER_TANK_CAP ) { - if ((te.fluidInput.getFluidAmount() > 0 && te.fluidInput.getFluid().getFluid() == fluidStack.getFluid()) || te.fluidInput.getFluidAmount() == 0) { - if (!player.isCreative()) { - if (held.getCount() > 1) { - held.setCount(held.getCount() - 1); - } else { - player.inventory.setInventorySlotContents(player.inventory.currentItem, ItemStack.EMPTY); - } - player.addItemStackToInventory(new ItemStack(Items.BUCKET)); - } - if (te.fluidInput.getFluidAmount() > 0) { - te.fluidInput.fill(fluidStack, true); - } else { - te.fluidInput.setFluid(fluidStack); - } - } - te.sendUpdates(); - - return true; - } - } - - if (held.getItem() == Items.WATER_BUCKET) { - if (te.fluidInput.getFluidAmount() + 1000 <= PaintOvenEntity.FILLER_TANK_CAP) { - if (te.fluidInput.getFluidAmount() > 0 && te.fluidInput.getFluid().getFluid() == FluidRegistry.WATER) { - te.fluidInput.fill(new FluidStack(FluidRegistry.WATER, 1000), true); - } else { - te.fluidInput.setFluid(new FluidStack(FluidRegistry.WATER, 1000)); - } - if (!player.isCreative()) { - if (held.getCount() > 1) { - held.setCount(held.getCount() - 1); - } else { - player.inventory.setInventorySlotContents(player.inventory.currentItem, ItemStack.EMPTY); - } - player.addItemStackToInventory(new ItemStack(Items.BUCKET)); - } - te.sendUpdates(); - return true; - } - } - } - - return super.onBlockActivated(world, pos, state, player, hand, facing, hitX, hitY, hitZ); - } - - @Override - public TileEntity createTileEntity(World worldIn, IBlockState state) { - if (electric) { - return new TarDistillerElectricEntity(); - } - return new TarDistillerEntity(); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - EnumFacing left = EnumFacing.WEST; - EnumFacing right = EnumFacing.EAST; - - if (getMetaFromState(state) == 1) { - left = EnumFacing.NORTH; - right = EnumFacing.SOUTH; - } - - if (getMetaFromState(state) == 2) { - left = EnumFacing.EAST; - right = EnumFacing.WEST; - } - - if (getMetaFromState(state) == 3) { - left = EnumFacing.SOUTH; - right = EnumFacing.NORTH; - } - - boolean fluid_left = fluidLeft(world, pos, left, right); - boolean fluid_right = fluidRight(world, pos, left, right); - boolean fluid_top = fluidTop(world, pos); - - return state.withProperty(FURNACE_ACTIVE, isFurnaceEnabled(state, world, pos)) - .withProperty(FLUID_LEFT, fluid_left).withProperty(FLUID_RIGHT, fluid_right).withProperty(FLUID_TOP, fluid_top).withProperty(BASE_PLATE, hasBasePlate(world, pos)); - } - - private boolean fluidLeft(IBlockAccess world, BlockPos pos, EnumFacing left, EnumFacing right) { - if (world.getTileEntity(pos.offset(left)) != null) { - TileEntity e = world.getTileEntity(pos.offset(left)); - if (e.hasCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, right)) { - return true; - } - } - return false; - } - - private boolean fluidRight(IBlockAccess world, BlockPos pos, EnumFacing left, EnumFacing right) { - if (world.getTileEntity(pos.offset(right)) != null) { - TileEntity e = world.getTileEntity(pos.offset(right)); - if (e.hasCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, left)) { - return true; - } - } - return false; - } - - private boolean fluidTop(IBlockAccess world, BlockPos pos) { - if (world.getTileEntity(pos.offset(EnumFacing.UP)) != null) { - TileEntity e = world.getTileEntity(pos.offset(EnumFacing.UP)); - if (e.hasCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, EnumFacing.DOWN) || (e.hasCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, EnumFacing.DOWN))) { - return true; - } - } - return false; - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - EnumFacing left = EnumFacing.WEST; - EnumFacing right = EnumFacing.EAST; - int meta = getMetaFromState(state); - - if (meta == 1) { - left = EnumFacing.NORTH; - right = EnumFacing.SOUTH; - } - - if (meta == 2) { - left = EnumFacing.EAST; - right = EnumFacing.WEST; - } - - if (meta == 3) { - left = EnumFacing.SOUTH; - right = EnumFacing.NORTH; - } - - boolean fluid_left = fluidLeft(world, pos, left, right); - boolean fluid_right = fluidRight(world, pos, left, right); - boolean fluid_top = fluidTop(world, pos); - - double top = fluid_top ? 1.0D : 0.9375D; - - if (meta == 0) { - double l = fluid_left ? 0.0D : 0.0625D; - double r = fluid_right ? 1.0D : 0.9375D; - return new AxisAlignedBB(l, 0.0D, 0.0625D, r, top, 0.9375D); - } - - if (meta == 1) { - double l = fluid_left ? 0.0D : 0.0625D; - double r = fluid_right ? 1.0D : 0.9375D; - return new AxisAlignedBB(0.0625D, 0.0D, l, 0.9375D, top, r); - } - - if (meta == 2) { - double l = fluid_right ? 0.0D : 0.0625D; - double r = fluid_left ? 1.0D : 0.9375D; - return new AxisAlignedBB(l, 0.0D, 0.0625D, r, top, 0.9375D); - } - - if (meta == 3) { - double l = fluid_right ? 0.0D : 0.0625D; - double r = fluid_left ? 1.0D : 0.9375D; - return new AxisAlignedBB(0.0625D, 0.0D, l, 0.9375D, top, r); - } - - return new AxisAlignedBB(0.0625D, 0.0D, 0.0625D, 0.9375D, top, 0.9375D); - } - - @Override - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBoundingBox(state, world, pos); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {FLUID_LEFT, FLUID_RIGHT, FLUID_TOP, ROTATION, FURNACE_ACTIVE, BASE_PLATE}); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerContainer.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerContainer.java deleted file mode 100644 index 4a0f61e8..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerContainer.java +++ /dev/null @@ -1,157 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.distiller; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.SlotBucket; -import com.silvaniastudios.roads.blocks.tileentities.SlotFluid; -import com.silvaniastudios.roads.blocks.tileentities.SlotOutput; -import com.silvaniastudios.roads.network.ClientGuiUpdatePacket; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.inventory.IContainerListener; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.Slot; -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.IItemHandler; - -public class TarDistillerContainer extends Container { - - public TarDistillerEntity tileEntity; - - public static final int INPUT = 0; - public static final int OUTPUT_1 = 1; - public static final int OUTPUT_2 = 2; - public static final int FUEL = 3; - public static final int FLUID_IN = 4; - public static final int FLUID_OUT_1 = 5; - public static final int FLUID_OUT_2 = 6; - public static final int FLUID_IN_BUCKET = 7; - public static final int FLUID_OUT_1_BUCKET = 8; - public static final int FLUID_OUT_2_BUCKET = 9; - - private boolean isElectric = false; - private int energy; - private int fluid_in; - private int fluid_out_1; - private int fluid_out_2; - private int tick; - private int fuel; - private int fuelCap; - - public TarDistillerContainer(InventoryPlayer invPlayer, TarDistillerEntity tileEntity, boolean isElectric) { - this.tileEntity = tileEntity; - - IItemHandler itemHandler = this.tileEntity.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, null); - addSlotToContainer(new SlotDistillerInput(itemHandler, INPUT, 34, 30, tileEntity)); - addSlotToContainer(new SlotOutput(itemHandler, OUTPUT_1, 100, 8)); - addSlotToContainer(new SlotOutput(itemHandler, OUTPUT_2, 100, 30)); - if (!isElectric) { addSlotToContainer(new SlotDistillerFuel(itemHandler, FUEL, 174, 30)); } - - addSlotToContainer(new SlotFluid(itemHandler, FLUID_IN, 34, 70)); - addSlotToContainer(new SlotFluid(itemHandler, FLUID_OUT_1, 100, 92)); - addSlotToContainer(new SlotFluid(itemHandler, FLUID_OUT_2, 174, 92)); - - addSlotToContainer(new SlotBucket(itemHandler, FLUID_IN_BUCKET, 34, 92)); - addSlotToContainer(new SlotBucket(itemHandler, FLUID_OUT_1_BUCKET, 100, 70)); - addSlotToContainer(new SlotBucket(itemHandler, FLUID_OUT_2_BUCKET, 174, 70)); - - this.isElectric = isElectric; - - addPlayerSlots(invPlayer); - } - - private void addPlayerSlots(IInventory playerInventory) { - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 9; j++) { - int x = 8 + j * 18; - int y = i * 18 + 126; - this.addSlotToContainer(new Slot(playerInventory, j + i * 9 + 9, x, y)); - } - } - - for (int i = 0; i < 9; i++) { - int x = 8 + i * 18; - int y = 58 + 126; - this.addSlotToContainer(new Slot(playerInventory, i, x, y)); - } - } - - @Override - public void detectAndSendChanges() { - TarDistillerElectricEntity tdee = null; - if (this.isElectric) { - tdee = (TarDistillerElectricEntity) tileEntity; - } - super.detectAndSendChanges(); - - for (int i = 0; i < this.listeners.size(); ++i) { - IContainerListener listener = this.listeners.get(i); - if (listener instanceof EntityPlayer) { - if (tdee != null) { - if (this.energy != tdee.energy.getEnergyStored()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(0, tdee.energy.getEnergyStored()), (EntityPlayerMP) listener); - } - } - if (this.fluid_in != tileEntity.fluidInput.getFluidAmount()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(1, tileEntity.fluidInput.getFluidAmount()), (EntityPlayerMP) listener); - } - if (this.fluid_out_1 != tileEntity.fluidOutput1.getFluidAmount()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(2, tileEntity.fluidOutput1.getFluidAmount()), (EntityPlayerMP) listener); - } - if (this.fluid_out_2 != tileEntity.fluidOutput2.getFluidAmount()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(3, tileEntity.fluidOutput2.getFluidAmount()), (EntityPlayerMP) listener); - } - if (this.tick != tileEntity.timerCount) { - listener.sendWindowProperty(this, 10, tileEntity.timerCount); - } - if (this.fuel != tileEntity.fuel_remaining) { - listener.sendWindowProperty(this, 11, tileEntity.fuel_remaining); - } - if (this.fuelCap != tileEntity.last_fuel_cap) { - listener.sendWindowProperty(this, 12, tileEntity.last_fuel_cap); - } - } - } - if (this.isElectric) { this.energy = tdee.energy.getEnergyStored(); } - this.fluid_in = tileEntity.fluidInput.getFluidAmount(); - this.fluid_out_1 = tileEntity.fluidOutput1.getFluidAmount(); - this.fluid_out_2 = tileEntity.fluidOutput2.getFluidAmount(); - this.tick = tileEntity.timerCount; - this.fuel = tileEntity.fuel_remaining; - this.fuelCap = tileEntity.last_fuel_cap; - } - - @Override - public boolean canInteractWith(EntityPlayer playerIn) { - return tileEntity.canInteractWith(playerIn); - } - - @Override - public ItemStack transferStackInSlot(EntityPlayer player, int slotId) { - ItemStack stack = ItemStack.EMPTY; - Slot slot = this.inventorySlots.get(slotId); - - if (slot != null && slot.getHasStack()) { - ItemStack stack1 = slot.getStack(); - stack = stack1.copy(); - - if (slotId < tileEntity.inventory.getSlots()) { - if (!this.mergeItemStack(stack1, tileEntity.inventory.getSlots(), this.inventorySlots.size(), true)) { - return ItemStack.EMPTY; - } - } else if (!this.mergeItemStack(stack1, 0, tileEntity.inventory.getSlots(), false)) { - return ItemStack.EMPTY; - } - - if (stack1.isEmpty()) { - slot.putStack(ItemStack.EMPTY); - } else { - slot.onSlotChanged(); - } - } - return stack; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerElectricEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerElectricEntity.java deleted file mode 100644 index 7832bf5d..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerElectricEntity.java +++ /dev/null @@ -1,101 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.distiller; - -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.FREnergyStorage; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; - -public class TarDistillerElectricEntity extends TarDistillerEntity implements ITickable, ICapabilityProvider { - - public boolean isProcessing = false; - int consumedEnergy = 0; - - public TarDistillerElectricEntity() {} - - public FREnergyStorage energy = new FREnergyStorage(RoadsConfig.machine.electricTarDistillerEnergyStorage, RoadsConfig.machine.electricTarDistillerEnergyTransferRate) {}; - - public Container createContainer(EntityPlayer player) { - return new TarDistillerContainer(player.inventory, this, true); - } - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return getCapability(capability, facing) != null; - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return CapabilityEnergy.ENERGY.cast(energy); - } - - return super.getCapability(capability, facing); - } - - @Override - public void update() { - if (energy.getEnergyStored() > 0) { - if (transferTar()) { - energy.extractEnergy(50, false); - } - } - if (energy.getEnergyStored() > RoadsConfig.machine.electricTarDistillerEnergyConsumption) { - //energy per tick - int ept = RoadsConfig.machine.electricTarDistillerEnergyConsumption / RoadsConfig.machine.electricTarDistillerTickRate; - if (timerCount < RoadsConfig.machine.electricTarDistillerTickRate) { - if (shouldTick()) { - isProcessing = true; - timerCount++; - energy.extractEnergy(ept, false); - consumedEnergy += ept; - } else { - isProcessing = false; - timerCount = 0; - } - } else { - //Round up energy usage to config value. eg 1000 usage, at 30 ticks, would only use 990 energy. This uses the other 10. - if (consumedEnergy < RoadsConfig.machine.electricTarDistillerEnergyConsumption) { - energy.extractEnergy(RoadsConfig.machine.electricTarDistillerEnergyConsumption - consumedEnergy, false); - } - process(); - timerCount = 0; - - if (!world.isRemote) { - sendUpdates(); - } - } - } - if (!world.isRemote) { - if (lastFluidInput != fluidInput.getFluidAmount() || lastFluidOutput1 != fluidOutput1.getFluidAmount() || lastFluidOutput2 != fluidOutput2.getFluidAmount()) { - lastFluidInput = fluidInput.getFluidAmount(); - lastFluidOutput1 = fluidOutput1.getFluidAmount(); - lastFluidOutput2 = fluidOutput2.getFluidAmount(); - sendUpdates(); - } - } - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("energy")) { - energy.deserializeNBT((NBTTagCompound) nbt.getTag("energy")); - } - super.readNBT(nbt); - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("energy", energy.serializeNBT()); - return super.writeNBT(nbt); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerEntity.java deleted file mode 100644 index 3537fe61..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerEntity.java +++ /dev/null @@ -1,340 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.distiller; - -import javax.annotation.Nonnull; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; -import com.silvaniastudios.roads.blocks.tileentities.recipes.RecipeRegistry; -import com.silvaniastudios.roads.blocks.tileentities.recipes.TarDistillerRecipes; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryBlock; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryEntity; -import com.silvaniastudios.roads.fluids.FRFluids; - -import net.minecraft.block.Block; -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.inventory.Container; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidTank; -import net.minecraftforge.fluids.FluidUtil; -import net.minecraftforge.fluids.capability.CapabilityFluidHandler; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.ItemStackHandler; - -public class TarDistillerEntity extends RoadTileEntity implements ITickable, ICapabilityProvider { - - public int last_fuel_cap = 20000; - public int timerCount = 0; - - public static final int TANK_CAP = 320000; - - public TarDistillerEntity() {} - - public Container createContainer(EntityPlayer player) { - return new TarDistillerContainer(player.inventory, this, false); - } - - public ItemStackHandler inventory = new ItemStackHandler(10) { - - @Override - public boolean isItemValid(int slot, @Nonnull ItemStack stack) { - return true; - } - - @Override - protected void onContentsChanged(int slot) { - TarDistillerEntity.this.markDirty(); - } - }; - - public TarDistillerStackHandler interactable_inv = new TarDistillerStackHandler(inventory, hasCapability(CapabilityEnergy.ENERGY, null)); - - public FluidTank fluidInput = new FluidTank(TANK_CAP) { - @Override - public boolean canFillFluidType(FluidStack fluid) { - return true; - } - }; - - public FluidTank fluidOutput1 = new FluidTank(TANK_CAP) { - @Override - public boolean canFillFluidType(FluidStack fluid) { - return fluid.getFluid() == FRFluids.tar; - } - }; - - public FluidTank fluidOutput2 = new FluidTank(TANK_CAP) { - @Override - public boolean canFillFluidType(FluidStack fluid) { - return canFill(); - } - }; - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - return getCapability(capability, facing) != null; - } - if (capability == CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY) { - return getCapability(capability, facing) != null; - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - if (facing != null) { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(interactable_inv); - } else { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(inventory); - } - } - - if (capability == CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY) { - EnumFacing sideLeft = EnumFacing.WEST; - EnumFacing sideRight = EnumFacing.EAST; - EnumFacing sideUp = EnumFacing.UP; - EnumFacing sideDown = EnumFacing.DOWN; - - IBlockState state = world.getBlockState(pos); - if (state.getBlock() instanceof TarDistillerBlock) { - TarDistillerBlock block = (TarDistillerBlock) state.getBlock(); - int meta = block.getMetaFromState(state); - - if (meta == 1) { - sideLeft = EnumFacing.NORTH; - sideRight = EnumFacing.SOUTH; - } - if (meta == 2) { - sideLeft = EnumFacing.EAST; - sideRight = EnumFacing.WEST; - } - if (meta == 3) { - sideLeft = EnumFacing.SOUTH; - sideRight = EnumFacing.NORTH; - } - - if (fluidOutput1.getFluidAmount() > 0) { - if (facing == sideRight || facing == sideDown) { return CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY.cast(fluidOutput1); } - } - if (facing == sideRight || facing == sideDown) { return CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY.cast(fluidOutput2); } - - if (facing == sideLeft || facing == sideUp) { return CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY.cast(fluidInput); } - } - } - - return super.getCapability(capability, facing); - } - - int lastFluidInput = 0; - int lastFluidOutput1 = 0; - int lastFluidOutput2 = 0; - - @Override - public void update() { - if (fuel_remaining > 0) { - fuel_remaining--; - } else if (fuel_remaining <= 0) { - if (inventory.getStackInSlot(TarDistillerContainer.FUEL).getItem() == Items.LAVA_BUCKET) { - fuel_remaining = 20000; - inventory.setStackInSlot(TarDistillerContainer.FUEL, new ItemStack(Items.BUCKET)); - sendUpdates(); - } else { - timerCount = 0; - return; - } - } - - if (fuel_remaining > 0) { - transferTar(); - } - - if (timerCount < RoadsConfig.machine.tarDistillerTickRate) { - if (shouldTick()) { - timerCount++; - } else { - timerCount = 0; - } - } else { - if (fuel_remaining > 0) { - process(); - } - timerCount = 0; - } - - if (!world.isRemote) { - if (lastFluidInput != fluidInput.getFluidAmount() || lastFluidOutput1 != fluidOutput1.getFluidAmount() || lastFluidOutput2 != fluidOutput2.getFluidAmount()) { - lastFluidInput = fluidInput.getFluidAmount(); - lastFluidOutput1 = fluidOutput1.getFluidAmount(); - lastFluidOutput2 = fluidOutput2.getFluidAmount(); - sendUpdates(); - } - } - } - - public void process() { - FurenikusRoads.debug(2, "Tar Distiller at" + formatPosition(pos) + "processing"); - if (!world.isRemote) { - boolean hasChanges = false; - - ItemStack fluid_in = inventory.getStackInSlot(TarDistillerContainer.FLUID_IN); - FluidStack fluidStack = null; - - - if (fluid_in.getUnlocalizedName().compareTo("item.forge.bucketFilled") == 0) { - fluidStack = FluidUtil.getFluidContained(fluid_in); - } else if (fluid_in.getItem() == Items.WATER_BUCKET) { - fluidStack = new FluidStack(FluidRegistry.WATER, 1000); - } - if (fluidStack != null) { - if (fluidInput.getFluid() != null) { - if (fluidInput.getFluid().getFluid() == fluidStack.getFluid()) { - if (fluidStack.amount <= fluidInput.getFluidAmount() + fluidStack.amount) { - fluidInput.fill(fluidStack, true); - } - } - } else { - fluidInput.fill(fluidStack, true); - } - } - - ItemStack fluid_out_1 = inventory.getStackInSlot(TarDistillerContainer.FLUID_OUT_1); - ItemStack fluid_out_1_bucket = inventory.getStackInSlot(TarDistillerContainer.FLUID_OUT_1_BUCKET); - //Should always be tar. Should. - if (fluid_out_1_bucket.getItem() == Items.BUCKET && fluidOutput1 != null && fluid_out_1.isEmpty()) { - if (fluidOutput1.getFluidAmount() >= 1000) { - Fluid fluid = fluidOutput1.getFluid().getFluid(); - ItemStack bucket = FluidUtil.getFilledBucket(fluidOutput1.getFluid()); - - fluidOutput1.drain(new FluidStack(fluid, 1000), true); - inventory.setStackInSlot(TarDistillerContainer.FLUID_OUT_1, bucket); - fluid_out_1_bucket.setCount(fluid_out_1_bucket.getCount() - 1); - hasChanges = true; - } - } - - ItemStack fluid_out_2 = inventory.getStackInSlot(TarDistillerContainer.FLUID_OUT_2); - ItemStack fluid_out_2_bucket = inventory.getStackInSlot(TarDistillerContainer.FLUID_OUT_1_BUCKET); - //Could be anything tbh (although currently its always nothing). - if (fluid_out_2_bucket.getItem() == Items.BUCKET && fluidOutput2 != null && fluid_out_2.isEmpty()) { - if (fluidOutput2.getFluidAmount() >= 1000) { - Fluid fluid = fluidOutput2.getFluid().getFluid(); - ItemStack bucket = FluidUtil.getFilledBucket(fluidOutput2.getFluid()); - - fluidOutput2.drain(new FluidStack(fluid, 1000), true); - inventory.setStackInSlot(TarDistillerContainer.FLUID_OUT_2, bucket); - fluid_out_2_bucket.setCount(fluid_out_2_bucket.getCount() - 1); - hasChanges = true; - } - } - if (hasChanges) { sendUpdates(); } - - for (int i = 0; i < RecipeRegistry.tarDistillerRecipes.size(); i++) { - TarDistillerRecipes recipe = RecipeRegistry.tarDistillerRecipes.get(i); - if (recipe.canFullyCraft(inventory, fluidInput, fluidOutput1, fluidOutput2)) { - recipe.processCrafting(inventory, fluidInput, fluidOutput1, fluidOutput2); - sendUpdates(); - return; - } - } - } - } - - public boolean transferTar() { - Block blockHere = world.getBlockState(pos).getBlock(); - EnumFacing getRight = EnumFacing.EAST; - if (blockHere.getMetaFromState(getState()) == 0) { getRight = EnumFacing.EAST; } - if (blockHere.getMetaFromState(getState()) == 1) { getRight = EnumFacing.SOUTH; } - if (blockHere.getMetaFromState(getState()) == 2) { getRight = EnumFacing.WEST; } - if (blockHere.getMetaFromState(getState()) == 3) { getRight = EnumFacing.NORTH; } - - IBlockState blockRight = world.getBlockState(pos.offset(getRight)); - if (blockRight.getBlock() instanceof RoadFactoryBlock) { - if (world.getTileEntity(pos.offset(getRight)) != null) { - RoadFactoryEntity rfEntity = (RoadFactoryEntity) world.getTileEntity(pos.offset(getRight)); - int transfer = RoadsConfig.machine.tarTransferRate; - if (fluidOutput1.getFluidAmount() >= transfer) { - if ((rfEntity.tarFluid.getFluidAmount() + transfer <= rfEntity.tarFluid.getCapacity())) { - FluidStack fluid = fluidOutput1.drain(new FluidStack(FRFluids.tar, transfer), true); - rfEntity.tarFluid.fill(fluid, true); - rfEntity.sendUpdates(); - return true; - } - } else if (fluidOutput1.getFluidAmount() > 0) { - if ((rfEntity.tarFluid.getFluidAmount() + fluidOutput1.getFluidAmount() <= rfEntity.tarFluid.getCapacity())) { - FluidStack fluid = fluidOutput1.drain(new FluidStack(FRFluids.tar, fluidOutput1.getFluidAmount()), true); - rfEntity.tarFluid.fill(fluid, true); - rfEntity.sendUpdates(); - return true; - } - } - } - } - return false; - } - - //Simulate everything but dont actually process. This is to check if it "can" do stuff. - public boolean shouldTick() { - for (int i = 0; i < RecipeRegistry.tarDistillerRecipes.size(); i++) { - TarDistillerRecipes recipe = RecipeRegistry.tarDistillerRecipes.get(i); - if (recipe.canFullyCraft(inventory, fluidInput, fluidOutput1, fluidOutput2)) { - return true; - } - } - return false; - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("items")) { - inventory.deserializeNBT((NBTTagCompound) nbt.getTag("items")); - } - if (nbt.hasKey("fluid_in_1")) { - fluidInput.readFromNBT((NBTTagCompound) nbt.getTag("fluid_in_1")); - } - if (nbt.hasKey("fluid_out_1")) { - fluidOutput1.readFromNBT((NBTTagCompound) nbt.getTag("fluid_out_1")); - } - if (nbt.hasKey("fluid_out_2")) { - fluidOutput2.readFromNBT((NBTTagCompound) nbt.getTag("fluid_out_2")); - } - - fuel_remaining = nbt.getInteger("fuel"); - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("items", inventory.serializeNBT()); - - nbt.setTag("fluid_in_1", fluidInput.writeToNBT(new NBTTagCompound())); - nbt.setTag("fluid_out_1", fluidOutput1.writeToNBT(new NBTTagCompound())); - nbt.setTag("fluid_out_2", fluidOutput2.writeToNBT(new NBTTagCompound())); - - nbt.setInteger("fuel", fuel_remaining); - return nbt; - } - - @Override - public NBTTagCompound writeToNBT(NBTTagCompound nbt) { - super.writeToNBT(nbt); - return writeNBT(nbt); - } - - @Override - public void readFromNBT(NBTTagCompound nbt) { - super.readFromNBT(nbt); - readNBT(nbt); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerStackHandler.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerStackHandler.java deleted file mode 100644 index c6f3f787..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/distiller/TarDistillerStackHandler.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.distiller; - -import com.silvaniastudios.roads.blocks.tileentities.recipes.RecipeRegistry; -import com.silvaniastudios.roads.blocks.tileentities.recipes.TarDistillerRecipes; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.util.NonNullList; -import net.minecraftforge.items.ItemStackHandler; - -public class TarDistillerStackHandler extends ItemStackHandler { - - private final ItemStackHandler internalStackHandler; - boolean electric; - - public TarDistillerStackHandler(ItemStackHandler ish, boolean electric) { - super(); - this.electric = electric; - internalStackHandler = ish; - } - - @Override - public void setSize(int size) { - stacks = NonNullList.withSize(size, ItemStack.EMPTY); - } - - @Override - public void setStackInSlot(int slot, ItemStack stack) { - internalStackHandler.setStackInSlot(slot, stack); - } - - @Override - public int getSlots() { - return internalStackHandler.getSlots(); - } - - @Override - public ItemStack getStackInSlot(int slot) { - return internalStackHandler.getStackInSlot(slot); - } - - @Override - public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - //Only lava is a valid fuel for this, coal doesnt burn hot enough. - if (slot == TarDistillerContainer.FUEL && stack.getItem() == Items.LAVA_BUCKET && !electric) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - for (int i = 0; i < RecipeRegistry.tarDistillerRecipes.size(); i++) { - TarDistillerRecipes tdr = RecipeRegistry.tarDistillerRecipes.get(i); - if (tdr.getInputStack().getItem() == stack.getItem() && tdr.getInputStack().getItemDamage() == stack.getItemDamage()) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - } - - if ((slot == TarDistillerContainer.FLUID_OUT_1_BUCKET || slot == TarDistillerContainer.FLUID_OUT_1_BUCKET) && stack.getItem() == Items.BUCKET) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - return stack; - } - - @Override - public ItemStack extractItem(int slot, int amount, boolean simulate) { - //Only take out the empty bucket from the lava, not a filled one. - if (slot == TarDistillerContainer.FUEL && getStackInSlot(slot).getItem() == Items.BUCKET) { - return internalStackHandler.extractItem(slot, amount, simulate); - } - if (slot == TarDistillerContainer.OUTPUT_1 - || slot == TarDistillerContainer.OUTPUT_2 - || slot == TarDistillerContainer.FLUID_IN_BUCKET - || slot == TarDistillerContainer.FLUID_OUT_1 - || slot == TarDistillerContainer.FLUID_OUT_2) { - return internalStackHandler.extractItem(slot, amount, simulate); - } - - return ItemStack.EMPTY; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorBlock.java deleted file mode 100644 index 362728a8..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorBlock.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.fabricator; - -import java.util.List; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.RoadTEBlock; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class FabricatorBlock extends RoadTEBlock { - - public FabricatorBlock(String name, boolean electric) { - super(name, electric, 15); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(ROTATION, RoadTEBlock.EnumRotation.north) - .withProperty(FURNACE_ACTIVE, false) - .withProperty(BASE_PLATE, true)); - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("roads.gui.fabricator.tooltip_1")); - } - - @Override - public void openGui(World world, BlockPos pos, EntityPlayer player) { - TileEntity te = world.getTileEntity(pos); - if (!world.isRemote) { - if (te != null && te instanceof RoadTileEntity) { - player.openGui(FurenikusRoads.instance, (electric ? 16 : 15), world, pos.getX(), pos.getY(), pos.getZ()); - } - } - } - - @Override - public TileEntity createTileEntity(World worldIn, IBlockState state) { - if (electric) { - return new FabricatorElectricEntity(); - } - return new FabricatorEntity(); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { - return new AxisAlignedBB(0.125D, 0.0D, 0.125D, 0.875D, 0.59375D, 0.875D); - } - - @Override - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBoundingBox(state, world, pos); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - return state.withProperty(FURNACE_ACTIVE, isFurnaceEnabled(state, world, pos)).withProperty(BASE_PLATE, hasBasePlate(world, pos)); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {ROTATION, FURNACE_ACTIVE, BASE_PLATE}); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorContainer.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorContainer.java deleted file mode 100644 index 2c9f49dd..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorContainer.java +++ /dev/null @@ -1,158 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.fabricator; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.SlotFuel; -import com.silvaniastudios.roads.blocks.tileentities.SlotOutput; -import com.silvaniastudios.roads.network.ClientGuiUpdatePacket; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.inventory.IContainerListener; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.Slot; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class FabricatorContainer extends Container { - - public static final int IN_1 = 0; - public static final int IN_2 = 1; - public static final int IN_3 = 2; - public static final int IN_4 = 3; - public static final int IN_5 = 4; - public static final int IN_6 = 5; - public static final int OUTPUT = 6; - public static final int FUEL = 7; - - private boolean isElectric = false; - private int energy; - private int tick; - private int fuel; - private int fuelCap; - private int recipeId; - - public FabricatorEntity tileEntity; - - - public FabricatorContainer(InventoryPlayer invPlayer, FabricatorEntity tileEntity, boolean isElectric) { - this.tileEntity = tileEntity; - - IItemHandler itemHandler = this.tileEntity.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, null); - addSlotToContainer(new SlotItemHandler(itemHandler, IN_1, 8, 20)); - addSlotToContainer(new SlotItemHandler(itemHandler, IN_2, 26, 20)); - addSlotToContainer(new SlotItemHandler(itemHandler, IN_3, 44, 20)); - addSlotToContainer(new SlotItemHandler(itemHandler, IN_4, 8, 38)); - addSlotToContainer(new SlotItemHandler(itemHandler, IN_5, 26, 38)); - addSlotToContainer(new SlotItemHandler(itemHandler, IN_6, 44, 38)); - addSlotToContainer(new SlotOutput(itemHandler, OUTPUT, 130, 29)); - if (!isElectric) { addSlotToContainer(new SlotFuel(itemHandler, FUEL, 152, 29)); } - - this.isElectric = isElectric; - addPlayerSlots(invPlayer); - } - - private void addPlayerSlots(IInventory playerInventory) { - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 9; j++) { - int x = 8 + j * 18; - int y = i * 18 + 70; - this.addSlotToContainer(new Slot(playerInventory, j + i * 9 + 9, x, y)); - } - } - - for (int i = 0; i < 9; i++) { - int x = 8 + i * 18; - int y = 58 + 70; - this.addSlotToContainer(new Slot(playerInventory, i, x, y)); - } - } - - @Override - public void detectAndSendChanges() { - super.detectAndSendChanges(); - - for (int i = 0; i < this.listeners.size(); ++i) { - IContainerListener listener = this.listeners.get(i); - if (listener instanceof EntityPlayer) { - if (this.isElectric) { - FabricatorElectricEntity fee = (FabricatorElectricEntity) tileEntity; - if (this.energy != fee.energy.getEnergyStored()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(0, fee.energy.getEnergyStored()), (EntityPlayerMP) listener); - } - this.energy = fee.energy.getEnergyStored(); - } - if (this.tick != tileEntity.timerCount) { - listener.sendWindowProperty(this, 10, tileEntity.timerCount); - } - if (this.fuel != tileEntity.fuel_remaining) { - listener.sendWindowProperty(this, 11, tileEntity.fuel_remaining); - } - if (this.fuelCap != tileEntity.last_fuel_cap) { - listener.sendWindowProperty(this, 12, tileEntity.last_fuel_cap); - } - if (this.recipeId != tileEntity.recipeId) { - listener.sendWindowProperty(this, 4, tileEntity.recipeId); - } - } - } - - this.tick = tileEntity.timerCount; - this.fuel = tileEntity.fuel_remaining; - this.fuelCap = tileEntity.last_fuel_cap; - this.recipeId = tileEntity.recipeId; - } - - @SideOnly(Side.CLIENT) - public void updateProgressBar(int id, int data) { - FurenikusRoads.debug(1, "Fabricator syncing ID: " + id + ", data: " + data); - if (id == 10) { - tileEntity.timerCount = data; - } - if (id == 11) { - tileEntity.fuel_remaining = data; - } - if (id == 12) { - tileEntity.last_fuel_cap = data; - } - if (id == 4) { - tileEntity.recipeId = data; - } - } - - @Override - public boolean canInteractWith(EntityPlayer playerIn) { - return tileEntity.canInteractWith(playerIn); - } - - @Override - public ItemStack transferStackInSlot(EntityPlayer player, int slotId) { - ItemStack stack = ItemStack.EMPTY; - Slot slot = this.inventorySlots.get(slotId); - - if (slot != null && slot.getHasStack()) { - ItemStack stack1 = slot.getStack(); - stack = stack1.copy(); - - if (slotId < tileEntity.inventory.getSlots()) { - if (!this.mergeItemStack(stack1, tileEntity.inventory.getSlots(), this.inventorySlots.size(), true)) { - return ItemStack.EMPTY; - } - } else if (!this.mergeItemStack(stack1, 0, tileEntity.inventory.getSlots(), false)) { - return ItemStack.EMPTY; - } - - if (stack1.isEmpty()) { - slot.putStack(ItemStack.EMPTY); - } else { - slot.onSlotChanged(); - } - } - return stack; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorElectricEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorElectricEntity.java deleted file mode 100644 index 416b855e..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorElectricEntity.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.fabricator; - -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.FREnergyStorage; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumFacing; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.energy.CapabilityEnergy; - -public class FabricatorElectricEntity extends FabricatorEntity { - - public boolean isProcessing = false; - int consumedEnergy = 0; - - public FabricatorElectricEntity() {} - - public FREnergyStorage energy = new FREnergyStorage(RoadsConfig.machine.electricFabricatorEnergyStorage, RoadsConfig.machine.electricFabricatorEnergyTransferRate) {}; - - public Container createContainer(EntityPlayer player) { - return new FabricatorContainer(player.inventory, this, true); - } - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return getCapability(capability, facing) != null; - } - - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return CapabilityEnergy.ENERGY.cast(energy); - } - return super.getCapability(capability, facing); - } - - @Override - public void update() { - if (energy.getEnergyStored() > RoadsConfig.machine.electricFabricatorEnergyConsumption) { - //energy per tick - int ept = RoadsConfig.machine.electricFabricatorEnergyConsumption / RoadsConfig.machine.electricFabricatorTickRate; - if (timerCount < RoadsConfig.machine.electricFabricatorTickRate) { - if (shouldTick()) { - isProcessing = true; - timerCount++; - energy.extractEnergy(ept, false); - consumedEnergy += ept; - } else { - isProcessing = false; - timerCount = 0; - } - } else { - //Round up energy usage to config value. eg 1000 usage, at 30 ticks, would only use 990 energy. This uses the other 10. - if (consumedEnergy < RoadsConfig.machine.electricFabricatorEnergyConsumption) { - energy.extractEnergy(RoadsConfig.machine.electricFabricatorEnergyConsumption - consumedEnergy, false); - } - process(); - - timerCount = 0; - - if (!world.isRemote) { - sendUpdates(); - } - } - } - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("energy")) { - energy.deserializeNBT((NBTTagCompound) nbt.getTag("energy")); - } - super.readNBT(nbt); - - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("energy", energy.serializeNBT()); - return super.writeNBT(nbt); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorEntity.java deleted file mode 100644 index 00b67d9a..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorEntity.java +++ /dev/null @@ -1,143 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.fabricator; - -import javax.annotation.Nonnull; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; -import com.silvaniastudios.roads.blocks.tileentities.recipes.FabricatorRecipes; -import com.silvaniastudios.roads.blocks.tileentities.recipes.RecipeRegistry; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.inventory.Container; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.ItemStackHandler; - -public class FabricatorEntity extends RoadTileEntity implements ITickable, ICapabilityProvider { - - public int timerCount = 0; - public int recipeId = 0; - - public FabricatorEntity() {} - - public Container createContainer(EntityPlayer player) { - return new FabricatorContainer(player.inventory, this, false); - } - - public ItemStackHandler inventory = new ItemStackHandler(8) { - @Override - public boolean isItemValid(int slot, @Nonnull ItemStack stack) { - if (slot != FabricatorContainer.OUTPUT) { - return true; - } - return false; - } - }; - - public FabricatorStackHandler interactable_inv = new FabricatorStackHandler(inventory, hasCapability(CapabilityEnergy.ENERGY, null)); - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - return getCapability(capability, facing) != null; - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - if (facing != null) { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(interactable_inv); - } else { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(inventory); - } - } - return super.getCapability(capability, facing); - } - - @Override - public void update() { - if (fuel_remaining > 0) { - fuel_remaining--; - } else if (fuel_remaining <= 0) { - if (!inventory.getStackInSlot(FabricatorContainer.FUEL).isEmpty()) { - fuel_remaining = TileEntityFurnace.getItemBurnTime(inventory.getStackInSlot(FabricatorContainer.FUEL)); - last_fuel_cap = fuel_remaining; - if (inventory.getStackInSlot(FabricatorContainer.FUEL).getItem() == Items.LAVA_BUCKET) { - inventory.setStackInSlot(FabricatorContainer.FUEL, new ItemStack(Items.BUCKET)); - } else { - inventory.extractItem(FabricatorContainer.FUEL, 1, false); - } - sendUpdates(); - } else { - timerCount = 0; - } - } - - if (timerCount < RoadsConfig.machine.fabricatorTickRate && fuel_remaining > 0) { - if (shouldTick()) { - timerCount++; - } else { - timerCount = 0; - } - } else { - if (fuel_remaining > 0) { - process(); - } - timerCount = 0; - } - } - - public boolean shouldTick() { - for (int i = 0; i < RecipeRegistry.fabricatorRecipes.size(); i++) { - FabricatorRecipes recipe = RecipeRegistry.fabricatorRecipes.get(i); - ItemStack result = recipe.getCraftingResult(inventory, recipeId); - if (result != ItemStack.EMPTY) { - if (inventory.insertItem(FabricatorContainer.OUTPUT, result, true) == ItemStack.EMPTY) { - return true; - } - } - } - return false; - } - - public void process() { - FurenikusRoads.debug(2, "Fabricator at" + formatPosition(pos) + "processing"); - for (int i = 0; i < RecipeRegistry.fabricatorRecipes.size(); i++) { - FabricatorRecipes recipe = RecipeRegistry.fabricatorRecipes.get(i); - recipe.processRecipe(inventory, recipeId); - } - } - - @Override - public void readNBT(NBTTagCompound nbt) { - fuel_remaining = nbt.getInteger("fuel"); - last_fuel_cap = nbt.getInteger("fuel_last_used"); - recipeId = nbt.getInteger("recipeId"); - - if (nbt.hasKey("items")) { - inventory.deserializeNBT((NBTTagCompound) nbt.getTag("items")); - } - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setInteger("fuel", fuel_remaining); - nbt.setInteger("fuel_last_used", last_fuel_cap); - nbt.setInteger("recipeId", recipeId); - - nbt.setTag("items", inventory.serializeNBT()); - return nbt; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorStackHandler.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorStackHandler.java deleted file mode 100644 index a2872ba2..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/fabricator/FabricatorStackHandler.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.fabricator; - -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.NonNullList; -import net.minecraftforge.items.ItemStackHandler; - -public class FabricatorStackHandler extends ItemStackHandler { - - private final ItemStackHandler internalStackHandler; - boolean electric; - - public FabricatorStackHandler(ItemStackHandler ish, boolean electric) { - super(); - this.electric = electric; - internalStackHandler = ish; - } - - @Override - public void setSize(int size) { - stacks = NonNullList.withSize(size, ItemStack.EMPTY); - } - - @Override - public void setStackInSlot(int slot, ItemStack stack) { - internalStackHandler.setStackInSlot(slot, stack); - } - - @Override - public int getSlots() { - return internalStackHandler.getSlots(); - } - - @Override - public ItemStack getStackInSlot(int slot) { - return internalStackHandler.getStackInSlot(slot); - } - - @Override - public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - if (slot == FabricatorContainer.FUEL && TileEntityFurnace.getItemBurnTime(stack) > 0 && !electric) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - if (slot != FabricatorContainer.OUTPUT) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - return stack; - } - - @Override - public ItemStack extractItem(int slot, int amount, boolean simulate) { - if (slot == FabricatorContainer.OUTPUT) { - return internalStackHandler.extractItem(slot, amount, simulate); - } - return ItemStack.EMPTY; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerBlock.java deleted file mode 100644 index 3cb689ca..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerBlock.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintfiller; - -import java.util.List; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.tileentities.RoadTEBlock; -import com.silvaniastudios.roads.items.PaintGun; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class PaintFillerBlock extends RoadTEBlock { - - protected String name; - - public static final PropertyBool GUN_LOADED = PropertyBool.create("gun_loaded"); - - public PaintFillerBlock(String name, boolean electric) { - super(name, electric, 1); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(GUN_LOADED, false) - .withProperty(ROTATION, RoadTEBlock.EnumRotation.north) - .withProperty(FURNACE_ACTIVE, false)); - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("roads.gui.paint_filler.tooltip_1")); - tooltip.add(I18n.format("roads.gui.paint_filler.tooltip_2")); - } - - @Override - public TileEntity createTileEntity(World worldIn, IBlockState state) { - if (electric) { - return new PaintFillerElectricEntity(); - } - return new PaintFillerEntity(); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - TileEntity tileEntity = world.getTileEntity(pos); - - boolean hasGun = false; - if (tileEntity instanceof PaintFillerEntity) { - PaintFillerEntity te = (PaintFillerEntity) tileEntity; - hasGun = hasGun(te); - } - return state.withProperty(GUN_LOADED, hasGun).withProperty(FURNACE_ACTIVE, isFurnaceEnabled(state, world, pos)).withProperty(BASE_PLATE, hasBasePlate(world, pos)); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - int meta = getMetaFromState(state); - - if (meta == 0) { return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 0.9375D, 1.0D, 0.9375D); } - if (meta == 1) { return new AxisAlignedBB(0.0625D, 0.0D, 0.0D, 1.0D, 1.0D, 0.9375D); } - if (meta == 2) { return new AxisAlignedBB(0.0625D, 0.0D, 0.0625D, 1.0D, 1.0D, 1.0D); } - if (meta == 3) { return new AxisAlignedBB(0.0D, 0.0D, 0.0625D, 0.9375D, 1.0D, 1.0D); } - - - return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 1.0D, 1.0D); - } - - @Override - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBoundingBox(state, world, pos); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {GUN_LOADED, ROTATION, FURNACE_ACTIVE, BASE_PLATE}); - } - - public boolean hasGun(PaintFillerEntity tileEntity) { - if (tileEntity.inventory.getStackInSlot(1).getItem() instanceof PaintGun) { return true; } - if (tileEntity.has_gun) { return true; } - return false; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerContainer.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerContainer.java deleted file mode 100644 index 54ee7f59..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerContainer.java +++ /dev/null @@ -1,161 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintfiller; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.SlotFuel; -import com.silvaniastudios.roads.network.ClientGuiUpdatePacket; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.inventory.IContainerListener; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.Slot; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.IItemHandler; - -public class PaintFillerContainer extends Container { - - public PaintFillerEntity tileEntity; - - private boolean isElectric = false; - private int energy; - private int paint_white; - private int paint_yellow; - private int paint_red; - private int tick; - private int fuel; - private int fuelCap; - - public static final int WHITE_DYE = 0; - public static final int YELLOW_DYE = 2; - public static final int RED_DYE = 3; - public static final int GUN = 1; - public static final int FUEL = 4; - - public PaintFillerContainer(InventoryPlayer invPlayer, PaintFillerEntity tileEntity, boolean isElectric) { - this.tileEntity = tileEntity; - - IItemHandler itemHandler = this.tileEntity.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, null); - addSlotToContainer(new SlotDye(itemHandler, 0, 74, 36, "dyeWhite")); - addSlotToContainer(new SlotPaintGun(itemHandler, 1, 21, 36)); - addSlotToContainer(new SlotDye(itemHandler, 2, 74, 64, "dyeYellow")); - addSlotToContainer(new SlotDye(itemHandler, 3, 74, 92, "dyeRed")); - if (!isElectric) { addSlotToContainer(new SlotFuel(itemHandler, 4, 174, 32)); } - - this.isElectric = isElectric; - addPlayerSlots(invPlayer); - } - - private void addPlayerSlots(IInventory playerInventory) { - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 9; j++) { - int x = 8 + j * 18; - int y = i * 18 + 124; - this.addSlotToContainer(new Slot(playerInventory, j + i * 9 + 9, x, y)); - } - } - - for (int i = 0; i < 9; i++) { - int x = 8 + i * 18; - int y = 58 + 124; - this.addSlotToContainer(new Slot(playerInventory, i, x, y)); - } - } - - @Override - public void detectAndSendChanges() { - PaintFillerElectricEntity pfee = null; - - if (this.isElectric) { - pfee = (PaintFillerElectricEntity) tileEntity; - } - super.detectAndSendChanges(); - - for (int i = 0; i < this.listeners.size(); ++i) { - IContainerListener listener = this.listeners.get(i); - if (listener instanceof EntityPlayer) { - if (pfee != null) { - if (this.energy != pfee.energy.getEnergyStored()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(0, pfee.energy.getEnergyStored()), (EntityPlayerMP) listener); - } - } - - if (this.paint_white != tileEntity.white_paint.getFluidAmount()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(1, tileEntity.white_paint.getFluidAmount()), (EntityPlayerMP) listener); - } - if (this.paint_yellow != tileEntity.yellow_paint.getFluidAmount()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(2, tileEntity.yellow_paint.getFluidAmount()), (EntityPlayerMP) listener); - } - if (this.paint_red != tileEntity.red_paint.getFluidAmount()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(3, tileEntity.red_paint.getFluidAmount()), (EntityPlayerMP) listener); - } - if (this.tick != tileEntity.timerCount) { - listener.sendWindowProperty(this, 10, tileEntity.timerCount); - } - if (this.fuel != tileEntity.fuel_remaining) { - listener.sendWindowProperty(this, 11, tileEntity.fuel_remaining); - } - if (this.fuelCap != tileEntity.last_fuel_cap) { - listener.sendWindowProperty(this, 12, tileEntity.last_fuel_cap); - } - } - - } - if (pfee != null) { this.energy = pfee.energy.getEnergyStored(); } - this.paint_white = tileEntity.white_paint.getFluidAmount(); - this.paint_yellow = tileEntity.yellow_paint.getFluidAmount(); - this.paint_red = tileEntity.red_paint.getFluidAmount(); - this.tick = tileEntity.timerCount; - this.fuel = tileEntity.fuel_remaining; - this.fuelCap = tileEntity.last_fuel_cap; - } - - @SideOnly(Side.CLIENT) - public void updateProgressBar(int id, int data) { - FurenikusRoads.debug(1, "Paint Filler syncing ID: " + id + ", data: " + data); - if (id == 10) { - tileEntity.timerCount = data; - } - if (id == 11) { - tileEntity.fuel_remaining = data; - } - if (id == 12) { - tileEntity.last_fuel_cap = data; - } - } - - @Override - public boolean canInteractWith(EntityPlayer playerIn) { - return tileEntity.canInteractWith(playerIn); - } - - @Override - public ItemStack transferStackInSlot(EntityPlayer player, int slotId) { - ItemStack stack = ItemStack.EMPTY; - Slot slot = this.inventorySlots.get(slotId); - - if (slot != null && slot.getHasStack()) { - ItemStack stack1 = slot.getStack(); - stack = stack1.copy(); - - if (slotId < tileEntity.inventory.getSlots()) { - if (!this.mergeItemStack(stack1, tileEntity.inventory.getSlots(), this.inventorySlots.size(), true)) { - return ItemStack.EMPTY; - } - } else if (!this.mergeItemStack(stack1, 0, tileEntity.inventory.getSlots(), false)) { - return ItemStack.EMPTY; - } - - if (stack1.isEmpty()) { - slot.putStack(ItemStack.EMPTY); - } else { - slot.onSlotChanged(); - } - } - return stack; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerElectricEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerElectricEntity.java deleted file mode 100644 index 3d499933..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerElectricEntity.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintfiller; - -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.FREnergyStorage; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; - -public class PaintFillerElectricEntity extends PaintFillerEntity implements ITickable, ICapabilityProvider { - - public boolean isProcessing = false; - int consumedEnergy = 0; - - public PaintFillerElectricEntity() {} - - public FREnergyStorage energy = new FREnergyStorage(RoadsConfig.machine.electricPaintFillerEnergyStorage, RoadsConfig.machine.electricPaintFillerEnergyTransferRate) {}; - - public Container createContainer(EntityPlayer player) { - return new PaintFillerContainer(player.inventory, this, true); - } - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return getCapability(capability, facing) != null; - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return CapabilityEnergy.ENERGY.cast(energy); - } - - return super.getCapability(capability, facing); - } - - @Override - public void update() { - if (energy.getEnergyStored() > RoadsConfig.machine.electricPaintFillerEnergyConsumption) { - //energy per tick - int ept = RoadsConfig.machine.electricPaintFillerEnergyConsumption / RoadsConfig.machine.electricFillerTickRate; - if (timerCount < RoadsConfig.machine.electricFillerTickRate) { - if (shouldTick()) { - isProcessing = true; - timerCount++; - energy.extractEnergy(ept, false); - consumedEnergy += ept; - } else { - isProcessing = false; - timerCount = 0; - } - } else { - //Round up energy usage to config value. eg 1000 usage, at 30 ticks, would only use 990 energy. This uses the other 10. - if (consumedEnergy < RoadsConfig.machine.electricPaintFillerEnergyConsumption) { - energy.extractEnergy(RoadsConfig.machine.electricPaintFillerEnergyConsumption - consumedEnergy, false); - } - process(); - timerCount = 0; - } - } - - if (!world.isRemote) { - if (lastWhite != white_paint.getFluidAmount() || lastYellow != yellow_paint.getFluidAmount() || lastRed != red_paint.getFluidAmount()) { - lastWhite = white_paint.getFluidAmount(); - lastYellow = yellow_paint.getFluidAmount(); - lastRed = red_paint.getFluidAmount(); - - sendUpdates(); - } - } - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("energy")) { - energy.deserializeNBT((NBTTagCompound) nbt.getTag("energy")); - } - super.readNBT(nbt); - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("energy", energy.serializeNBT()); - return super.writeNBT(nbt); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerEntity.java deleted file mode 100644 index 6fea4afd..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerEntity.java +++ /dev/null @@ -1,372 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintfiller; - -import javax.annotation.Nonnull; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; -import com.silvaniastudios.roads.fluids.FRFluids; -import com.silvaniastudios.roads.items.PaintGun; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.inventory.Container; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidTank; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.ItemStackHandler; - -public class PaintFillerEntity extends RoadTileEntity implements ITickable, ICapabilityProvider { - - public boolean has_gun = false; - - public int gun_white = 0; - public int gun_yellow = 0; - public int gun_red = 0; - - public int timerCount = 0; - - public static final int FILLER_TANK_CAP = 32000; - public static final int GUN_TANK_CAP = 32000; - - public PaintFillerEntity() {} - - @Override - public boolean hasFastRenderer() { - return true; - } - - public ItemStackHandler inventory = new ItemStackHandler(5) { - - @Override - public boolean isItemValid(int slot, @Nonnull ItemStack stack) { - return true; - } - - @Override - protected void onContentsChanged(int slot) { - PaintFillerEntity.this.markDirty(); - } - }; - - public FluidTank white_paint = new FluidTank(FILLER_TANK_CAP) { - @Override - public boolean canFillFluidType(FluidStack fluid) { - return fluid.getFluid() == FRFluids.white_paint; - } - }; - - public FluidTank yellow_paint = new FluidTank(FILLER_TANK_CAP) { - @Override - public boolean canFillFluidType(FluidStack fluid) { - return fluid.getFluid() == FRFluids.yellow_paint; - } - }; - - public FluidTank red_paint = new FluidTank(FILLER_TANK_CAP) { - @Override - public boolean canFillFluidType(FluidStack fluid) { - return fluid.getFluid() == FRFluids.red_paint; - } - }; - - public PaintFillerStackHandler interactable_inv = new PaintFillerStackHandler(inventory, hasCapability(CapabilityEnergy.ENERGY, null)); - - public Container createContainer(EntityPlayer player) { - return new PaintFillerContainer(player.inventory, this, false); - } - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - return getCapability(capability, facing) != null; - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(interactable_inv); - } - - return super.getCapability(capability, facing); - } - - int lastWhite = 0; - int lastYellow = 0; - int lastRed = 0; - - @Override - public void update() { - if (fuel_remaining > 0) { - fuel_remaining--; - } else if (fuel_remaining <= 0) { - if (!inventory.getStackInSlot(PaintFillerContainer.FUEL).isEmpty()) { - fuel_remaining = TileEntityFurnace.getItemBurnTime(inventory.getStackInSlot(PaintFillerContainer.FUEL)); - last_fuel_cap = fuel_remaining; - if (inventory.getStackInSlot(PaintFillerContainer.FUEL).getItem() == Items.LAVA_BUCKET) { - inventory.setStackInSlot(PaintFillerContainer.FUEL, new ItemStack(Items.BUCKET)); - } else { - inventory.extractItem(PaintFillerContainer.FUEL, 1, false); - } - sendUpdates(); - } else { - timerCount = 0; - } - } - - if (timerCount < RoadsConfig.machine.fillerTickRate && fuel_remaining > 0) { - if (shouldTick()) { - timerCount++; - } else { - timerCount = 0; - } - } else { - if (fuel_remaining > 0) { - process(); - } - timerCount = 0; - } - - if (!world.isRemote) { - if (lastWhite != white_paint.getFluidAmount() || lastYellow != yellow_paint.getFluidAmount() || lastRed != red_paint.getFluidAmount()) { - lastWhite = white_paint.getFluidAmount(); - lastYellow = yellow_paint.getFluidAmount(); - lastRed = red_paint.getFluidAmount(); - - sendUpdates(); - } - } - } - - public void process() { - FurenikusRoads.debug(2, "Paint Filler at" + formatPosition(pos) + "processing"); - if (!world.isRemote) { - int paintPerDye = RoadsConfig.machine.fillerPaintPerDye; - boolean hasChanges = false; - - if ((!inventory.getStackInSlot(PaintFillerContainer.WHITE_DYE).isEmpty() || !inventory.getStackInSlot(PaintFillerContainer.YELLOW_DYE).isEmpty() || !inventory.getStackInSlot(PaintFillerContainer.RED_DYE).isEmpty())) { - if (isDye(inventory.getStackInSlot(PaintFillerContainer.WHITE_DYE), "dyeWhite") && white_paint.getFluidAmount() + paintPerDye <= white_paint.getCapacity()) { - FurenikusRoads.debug(2, "Paint Filler: Create white paint"); - inventory.extractItem(PaintFillerContainer.WHITE_DYE, 1, false); - white_paint.fill(new FluidStack(FRFluids.white_paint, paintPerDye), true); - hasChanges = true; - } - - if (isDye(inventory.getStackInSlot(PaintFillerContainer.YELLOW_DYE), "dyeYellow") && yellow_paint.getFluidAmount() + paintPerDye <= yellow_paint.getCapacity()) { - FurenikusRoads.debug(2, "Paint Filler: Create yellow paint"); - inventory.extractItem(PaintFillerContainer.YELLOW_DYE, 1, false); - yellow_paint.fill(new FluidStack(FRFluids.yellow_paint, paintPerDye), true); - hasChanges = true; - } - - if (isDye(inventory.getStackInSlot(PaintFillerContainer.RED_DYE), "dyeRed") && red_paint.getFluidAmount() + paintPerDye <= red_paint.getCapacity()) { - FurenikusRoads.debug(2, "Paint Filler: Create red paint"); - inventory.extractItem(PaintFillerContainer.RED_DYE, 1, false); - red_paint.fill(new FluidStack(FRFluids.red_paint, paintPerDye), true); - hasChanges = true; - } - } - - if (getGun().getItem() instanceof PaintGun) { - if (!has_gun) { hasChanges = true; } - has_gun = true; - - NBTTagCompound nbt; - - if (!getGun().hasTagCompound()) { - nbt = new NBTTagCompound(); - nbt.setInteger("white_paint", 0); - nbt.setInteger("yellow_paint", 0); - nbt.setInteger("red_paint", 0); - - getGun().setTagCompound(nbt); - } else { - nbt = getGun().getTagCompound(); - } - - gun_white = nbt.getInteger("white_paint"); - gun_yellow = nbt.getInteger("yellow_paint"); - gun_red = nbt.getInteger("red_paint"); - - fillGun(nbt); - } else { - if (has_gun) { hasChanges = true; } - has_gun = false; - - gun_white = 0; - gun_yellow = 0; - gun_red = 0; - } - - if (hasChanges) { - sendUpdates(); - } - } - } - - public boolean shouldTick() { - int paintPerDye = RoadsConfig.machine.fillerPaintPerDye; - - if ((!inventory.getStackInSlot(PaintFillerContainer.WHITE_DYE).isEmpty() || !inventory.getStackInSlot(PaintFillerContainer.YELLOW_DYE).isEmpty() || !inventory.getStackInSlot(PaintFillerContainer.RED_DYE).isEmpty()) && (fuel_remaining > 0 || hasCapability(CapabilityEnergy.ENERGY, null))) { - if (isDye(inventory.getStackInSlot(PaintFillerContainer.WHITE_DYE), "dyeWhite") && white_paint.getFluidAmount() + paintPerDye <= white_paint.getCapacity()) { - return true; - } - - if (isDye(inventory.getStackInSlot(PaintFillerContainer.YELLOW_DYE), "dyeYellow") && yellow_paint.getFluidAmount() + paintPerDye <= yellow_paint.getCapacity()) { - return true; - } - - if (isDye(inventory.getStackInSlot(PaintFillerContainer.RED_DYE), "dyeRed") && red_paint.getFluidAmount() + paintPerDye <= red_paint.getCapacity()) { - return true; - } - } - - if (getGun().getItem() instanceof PaintGun) { - NBTTagCompound nbt = getGun().getTagCompound(); - - if (!getGun().hasTagCompound() && (white_paint.getFluidAmount() > 0 || white_paint.getFluidAmount() > 0 || white_paint.getFluidAmount() > 0)) { - return true; - } - if (!getGun().hasTagCompound()) { - nbt = new NBTTagCompound(); - nbt.setInteger("white_paint", 0); - nbt.setInteger("yellow_paint", 0); - nbt.setInteger("red_paint", 0); - - getGun().setTagCompound(nbt); - if (!world.isRemote) { sendUpdates(); } - return true; - } - - if (white_paint.getFluidAmount() > 0 && nbt.getInteger("white_paint") < GUN_TANK_CAP) { return true; } - if (yellow_paint.getFluidAmount() > 0 && nbt.getInteger("yellow_paint") < GUN_TANK_CAP) { return true; } - if (red_paint.getFluidAmount() > 0 && nbt.getInteger("red_paint") < GUN_TANK_CAP) { return true; } - } - return false; - } - - public void fillGun(NBTTagCompound nbt) { - ItemStack stack = getGun(); - if (stack.getItem() instanceof PaintGun) { - int fillRate = 1000; - boolean hasChanges = false; - - if (white_paint.getFluidAmount() > 0) { - FluidStack drained = null; - if (white_paint.getFluidAmount() >= fillRate && gun_white <= GUN_TANK_CAP - fillRate) { - drained = white_paint.drain(new FluidStack(FRFluids.white_paint, fillRate), true); - } else { - if (white_paint.getFluidAmount() <= (GUN_TANK_CAP - gun_white)) { //if {block tank} less than or equal to {gun max - gun current} - "Is there enough space?" - drained = white_paint.drain(new FluidStack(FRFluids.white_paint, red_paint.getFluidAmount()), true); - } else { - drained = white_paint.drain(new FluidStack(FRFluids.white_paint, (GUN_TANK_CAP - gun_white)), true); - } - } - if (drained != null) { - hasChanges = true; - gun_white = gun_white + drained.amount; - } - } - - if (yellow_paint.getFluidAmount() > 0) { - FluidStack drained = null; - if (yellow_paint.getFluidAmount() >= fillRate && gun_yellow <= GUN_TANK_CAP - fillRate) { - drained = yellow_paint.drain(new FluidStack(FRFluids.yellow_paint, fillRate), true); - } else { - if (yellow_paint.getFluidAmount() <= (GUN_TANK_CAP - gun_yellow)) { - drained = yellow_paint.drain(new FluidStack(FRFluids.yellow_paint, yellow_paint.getFluidAmount()), true); - } else { - drained = yellow_paint.drain(new FluidStack(FRFluids.yellow_paint, (GUN_TANK_CAP - gun_yellow)), true); - } - } - if (drained != null) { - hasChanges = true; - gun_yellow = gun_yellow + drained.amount; - } - } - - if (red_paint.getFluidAmount() > 0) { - FluidStack drained = null; - if (red_paint.getFluidAmount() >= fillRate && gun_red <= GUN_TANK_CAP - fillRate) { - drained = red_paint.drain(new FluidStack(FRFluids.red_paint, fillRate), true); - } else { - if (red_paint.getFluidAmount() <= (GUN_TANK_CAP - gun_red)) { - drained = red_paint.drain(new FluidStack(FRFluids.red_paint, red_paint.getFluidAmount()), true); - } else { - drained = red_paint.drain(new FluidStack(FRFluids.red_paint, (GUN_TANK_CAP - gun_red)), true); - } - } - if (drained != null) { - hasChanges = true; - gun_red = gun_red + drained.amount; - } - } - if (hasChanges) { - nbt.setInteger("white_paint", gun_white); - nbt.setInteger("yellow_paint", gun_yellow); - nbt.setInteger("red_paint", gun_red); - sendUpdates(); - } - } - } - - public ItemStack getGun() { - return inventory.getStackInSlot(1); - } - - @Override - public void readNBT(NBTTagCompound nbt) { - has_gun = nbt.getBoolean("has_gun"); - fuel_remaining = nbt.getInteger("fuel"); - last_fuel_cap = nbt.getInteger("fuel_last_used"); - - gun_white = nbt.getInteger("gun_white"); - gun_yellow = nbt.getInteger("gun_yellow"); - gun_red = nbt.getInteger("gun_red"); - - if (gun_white > GUN_TANK_CAP) { gun_white = GUN_TANK_CAP; } - if (gun_yellow > GUN_TANK_CAP) { gun_yellow = GUN_TANK_CAP; } - if (gun_red > GUN_TANK_CAP) { gun_red = GUN_TANK_CAP; } - - if (nbt.hasKey("items")) { - inventory.deserializeNBT((NBTTagCompound) nbt.getTag("items")); - } - if (nbt.hasKey("paint_white")) { - white_paint.readFromNBT((NBTTagCompound) nbt.getTag("paint_white")); - } - if (nbt.hasKey("paint_yellow")) { - yellow_paint.readFromNBT((NBTTagCompound) nbt.getTag("paint_yellow")); - } - if (nbt.hasKey("paint_red")) { - red_paint.readFromNBT((NBTTagCompound) nbt.getTag("paint_red")); - } - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setBoolean("has_gun", has_gun); - nbt.setInteger("fuel", fuel_remaining); - nbt.setInteger("fuel_last_used", last_fuel_cap); - - nbt.setTag("paint_white", white_paint.writeToNBT(new NBTTagCompound())); - nbt.setTag("paint_yellow", yellow_paint.writeToNBT(new NBTTagCompound())); - nbt.setTag("paint_red", red_paint.writeToNBT(new NBTTagCompound())); - - nbt.setInteger("gun_white", gun_white); - nbt.setInteger("gun_yellow", gun_yellow); - nbt.setInteger("gun_red", gun_red); - - nbt.setTag("items", inventory.serializeNBT()); - return nbt; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerStackHandler.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerStackHandler.java deleted file mode 100644 index e40e6f7f..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/PaintFillerStackHandler.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintfiller; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.items.FRItems; - -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.NonNullList; -import net.minecraftforge.items.ItemStackHandler; -import net.minecraftforge.oredict.OreDictionary; - -public class PaintFillerStackHandler extends ItemStackHandler { - - private final ItemStackHandler internalStackHandler; - boolean electric; - - public PaintFillerStackHandler(ItemStackHandler ish, boolean electric) { - super(); - this.electric = electric; - internalStackHandler = ish; - } - - @Override - public void setSize(int size) { - stacks = NonNullList.withSize(size, ItemStack.EMPTY); - } - - @Override - public void setStackInSlot(int slot, ItemStack stack) { - internalStackHandler.setStackInSlot(slot, stack); - } - - @Override - public int getSlots() { - return internalStackHandler.getSlots(); - } - - @Override - public ItemStack getStackInSlot(int slot) { - return internalStackHandler.getStackInSlot(slot); - } - - @Override - public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - if (slot == PaintFillerContainer.FUEL && TileEntityFurnace.getItemBurnTime(stack) > 0 && !electric) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - if (slot == PaintFillerContainer.WHITE_DYE && isDye(stack, "dyeWhite")) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - if (slot == PaintFillerContainer.YELLOW_DYE && isDye(stack, "dyeYellow")) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - if (slot == PaintFillerContainer.RED_DYE && isDye(stack, "dyeRed")) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - if (slot == PaintFillerContainer.GUN && stack.getItem() == FRItems.paint_gun) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - FurenikusRoads.debug(1, "[#30] Paint filler insertItem called, slot: " + slot + ", stack" + stack.getDisplayName() + " x" + stack.getCount()); - return stack; - } - - @Override - public ItemStack extractItem(int slot, int amount, boolean simulate) { - return internalStackHandler.extractItem(slot, amount, simulate); - } - - public boolean isDye(ItemStack stack, String name) { - if (!stack.isEmpty()) { - for (int id : OreDictionary.getOreIDs(stack)) { - if (OreDictionary.getOreName(id).equals(name)) { - return true; - } - } - } - return false; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/SlotDye.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/SlotDye.java deleted file mode 100644 index 5eb3716a..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/SlotDye.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintfiller; - -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; -import net.minecraftforge.oredict.OreDictionary; - -public class SlotDye extends SlotItemHandler { - - private String dyeName; - - public SlotDye(IItemHandler itemHandler, int index, int xPosition, int yPosition, String dyeName) { - super(itemHandler, index, xPosition, yPosition); - this.dyeName = dyeName; - } - - @Override - public boolean isItemValid(ItemStack stack) { - if (stack != ItemStack.EMPTY) { - for (int id : OreDictionary.getOreIDs(stack)) { - if (dyeName.equals("dyeAny")) { - if (OreDictionary.getOreName(id).equals("dyeWhite") || OreDictionary.getOreName(id).equals("dyeYellow") || OreDictionary.getOreName(id).equals("dyeRed")) { - return true; - } - } else { - if (OreDictionary.getOreName(id).equals(dyeName)) { - return true; - } - } - } - } - return false; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/SlotPaintGun.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/SlotPaintGun.java deleted file mode 100644 index b2f4e33d..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/SlotPaintGun.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintfiller; - -import com.silvaniastudios.roads.items.PaintGun; - -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class SlotPaintGun extends SlotItemHandler { - - public SlotPaintGun(IItemHandler itemHandler, int index, int xPosition, int yPosition) { - super(itemHandler, index, xPosition, yPosition); - } - - @Override - public boolean isItemValid(ItemStack stack) { - if (stack.getItem() instanceof PaintGun) { return true; } - return false; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/hopper/PaintFillerHopperBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/hopper/PaintFillerHopperBlock.java deleted file mode 100644 index 354eff49..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/hopper/PaintFillerHopperBlock.java +++ /dev/null @@ -1,248 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintfiller.hopper; - -import java.util.List; - -import javax.annotation.Nullable; - -import com.google.common.collect.ImmutableList; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.RoadTEBlock; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerBlock; -import com.silvaniastudios.roads.items.ItemWrench; - -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.client.renderer.block.statemap.DefaultStateMapper; -import net.minecraft.client.renderer.block.statemap.StateMapperBase; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.BlockRenderLayer; -import net.minecraft.util.EnumBlockRenderType; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.text.TextComponentString; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class PaintFillerHopperBlock extends Block { - - protected String name; - - public static final PropertyBool UP = PropertyBool.create("up"); - public static final PropertyBool NORTH = PropertyBool.create("north"); - public static final PropertyBool EAST = PropertyBool.create("east"); - public static final PropertyBool SOUTH = PropertyBool.create("south"); - public static final PropertyBool WEST = PropertyBool.create("west"); - - public static final PropertyEnum ROTATION = PropertyEnum.create("rotation", RoadTEBlock.EnumRotation.class); - - public static final PropertyBool IS_OUTPUT = PropertyBool.create("is_output"); //refers to hopper -> filler. Things -> hopper is always an inversion of this. - - - public PaintFillerHopperBlock(String name) { - super(Material.IRON); - this.name = name; - setUnlocalizedName(FurenikusRoads.MODID + "." + name); - setRegistryName(name); - this.setCreativeTab(FurenikusRoads.tab_tools); - this.setHardness(2.5F); - this.setHarvestLevel("pickaxe", 1); - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("roads.gui.paint_filler_hopper.tooltip_1")); - } - - @Override - public TileEntity createTileEntity(World worldIn, IBlockState state) { - return new PaintFillerHopperEntity(); - } - - @Override - public boolean hasTileEntity(IBlockState state) { - return true; - } - - @Override - public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - if (player.getHeldItem(hand).getItem() instanceof ItemWrench) { - ItemWrench wrench = (ItemWrench) player.getHeldItem(hand).getItem(); - TileEntity tileEntity = world.getTileEntity(pos); - - if (tileEntity instanceof PaintFillerHopperEntity) { - PaintFillerHopperEntity te = (PaintFillerHopperEntity) tileEntity; - if (wrench.getMode(player.getHeldItem(hand)) == 1) { - te.toggleOutputMode(player); - } else { - te.updateSide(facing, player); - } - } - } - return true; - } - - public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - return state.withProperty(ROTATION, getRotation(world, pos)) - .withProperty(IS_OUTPUT, getOutput(world, pos)) - .withProperty(UP, getIO(world, pos, EnumFacing.UP)) - .withProperty(NORTH, getIO(world, pos, EnumFacing.NORTH)) - .withProperty(EAST, getIO(world, pos, EnumFacing.EAST)) - .withProperty(SOUTH, getIO(world, pos, EnumFacing.SOUTH)) - .withProperty(WEST, getIO(world, pos, EnumFacing.WEST)); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {UP, NORTH, EAST, SOUTH, WEST, ROTATION, IS_OUTPUT}); - } - - public int getMetaFromState(IBlockState state) { - return 0; - } - - public IBlockState getStateFromMeta(int meta) { - return this.getDefaultState(); - } - - public boolean getOutput(IBlockAccess world, BlockPos pos) { - TileEntity tileEntity = world.getTileEntity(pos); - if (tileEntity instanceof PaintFillerHopperEntity) { - PaintFillerHopperEntity te = (PaintFillerHopperEntity) tileEntity; - return te.getOutput(); - } - return true; - } - - public boolean getIO(IBlockAccess world, BlockPos pos, EnumFacing dir) { - TileEntity tileEntity = world.getTileEntity(pos); - if (tileEntity instanceof PaintFillerHopperEntity) { - PaintFillerHopperEntity te = (PaintFillerHopperEntity) tileEntity; - - return te.getIOFromSide(dir) != EnumIO.none; - } - return false; - } - - public RoadTEBlock.EnumRotation getRotation(IBlockAccess world, BlockPos pos) { - if (world.getBlockState(pos.offset(EnumFacing.DOWN)).getBlock() instanceof PaintFillerBlock) { - return world.getBlockState(pos.offset(EnumFacing.DOWN)).getValue(RoadTEBlock.ROTATION); - } - return RoadTEBlock.EnumRotation.north; - } - - public boolean isElectric(IBlockAccess world, BlockPos pos) { - if (world.getBlockState(pos.offset(EnumFacing.DOWN)).getBlock() instanceof PaintFillerBlock) { - PaintFillerBlock block = (PaintFillerBlock) world.getBlockState(pos.offset(EnumFacing.DOWN)).getBlock(); - return block.isElectric(); - } - return false; - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - boolean north = getIO(world, pos, EnumFacing.NORTH); - boolean east = getIO(world, pos, EnumFacing.EAST); - boolean south = getIO(world, pos, EnumFacing.SOUTH); - boolean west = getIO(world, pos, EnumFacing.WEST); - boolean up = getIO(world, pos, EnumFacing.UP); - - double n = north ? 0.0D : 0.1875D; - double e = east ? 1.0D : 0.8125D; - double s = south ? 1.0D : 0.8125D; - double w = west ? 0.0D : 0.1875D; - double u = up ? 1.0D : 0.75D; - - return new AxisAlignedBB(w, 0.0D, n, e, u, s); - } - - @Override - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBoundingBox(state, world, pos); - } - - public void registerItemModel(Item itemBlock) { - FurenikusRoads.proxy.registerItemRenderer(itemBlock, 0, name); - } - - public Item createItemBlock() { - return new ItemBlock(this).setRegistryName(getRegistryName()); - } - - @Override - public EnumBlockRenderType getRenderType(IBlockState state) { - return EnumBlockRenderType.MODEL; - } - - @Override - public BlockRenderLayer getBlockLayer() { - return BlockRenderLayer.CUTOUT; - } - - @SideOnly(Side.CLIENT) - public void initModel() { - StateMapperBase b = new DefaultStateMapper(); - BlockStateContainer bsc = this.getBlockState(); - ImmutableList values = bsc.getValidStates(); - - for(IBlockState state : values) { - ModelResourceLocation mrl = new ModelResourceLocation(state.getBlock().getRegistryName(), b.getPropertyString(state.getProperties())); - - ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(state.getBlock()), this.getMetaFromState(state), mrl); - } - } - - @Override - public boolean isFullCube(IBlockState state) { - return false; - } - - @Override - public boolean isOpaqueCube(IBlockState state) { - return false; - } - - public static enum EnumIO implements IStringSerializable { - none("none"), - white("white"), - yellow("yellow"), - red("red"), - item("item"); - - private final String name; - - private EnumIO(String name) { - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public static EnumIO byId(int byId) { - if (byId == 1) { return EnumIO.white; } - if (byId == 2) { return EnumIO.yellow; } - if (byId == 3) { return EnumIO.red; } - if (byId == 4) { return EnumIO.item; } - - return EnumIO.none; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/hopper/PaintFillerHopperEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/hopper/PaintFillerHopperEntity.java deleted file mode 100644 index d0128635..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/hopper/PaintFillerHopperEntity.java +++ /dev/null @@ -1,320 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintfiller.hopper; - -import javax.annotation.Nonnull; - -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerContainer; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerEntity; -import com.silvaniastudios.roads.fluids.FRFluids; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraft.util.text.TextComponentString; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidTank; -import net.minecraftforge.fluids.capability.CapabilityFluidHandler; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.ItemStackHandler; - -public class PaintFillerHopperEntity extends RoadTileEntity implements ITickable, ICapabilityProvider { - - private int up; - private int north; - private int east; - private int south; - private int west; - - private boolean is_output; - - public static final int FILLER_TANK_CAP = 32000; - - public ItemStackHandler inventory = new ItemStackHandler(5) { - - @Override - public boolean isItemValid(int slot, @Nonnull ItemStack stack) { - if ((slot == 0 && isDye(stack, "dyeWhite")) || - (slot == 1 && isDye(stack, "dyeYellow")) || - (slot == 2 && isDye(stack, "dyeRed"))) { - return true; - } - return false; - } - }; - - public FluidTank white_paint = new FluidTank(FILLER_TANK_CAP) { - @Override - public boolean canFillFluidType(FluidStack fluid) { - return fluid.getFluid() == FRFluids.white_paint; - } - }; - - public FluidTank yellow_paint = new FluidTank(FILLER_TANK_CAP) { - @Override - public boolean canFillFluidType(FluidStack fluid) { - return fluid.getFluid() == FRFluids.yellow_paint; - - } - }; - - public FluidTank red_paint = new FluidTank(FILLER_TANK_CAP) { - @Override - public boolean canFillFluidType(FluidStack fluid) { - return fluid.getFluid() == FRFluids.red_paint; - } - }; - - public PaintFillerHopperStackHandler interactable_inv = new PaintFillerHopperStackHandler(inventory, hasCapability(CapabilityEnergy.ENERGY, null)); - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - if (getIOFromSide(facing) == PaintFillerHopperBlock.EnumIO.item) { - return true; - } - } - if (capability == CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY) { - if (getIOFromSide(facing) == PaintFillerHopperBlock.EnumIO.white - || getIOFromSide(facing) == PaintFillerHopperBlock.EnumIO.yellow - || getIOFromSide(facing) == PaintFillerHopperBlock.EnumIO.red) { - return true; - } - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - if (getIOFromSide(facing) == PaintFillerHopperBlock.EnumIO.item) { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(interactable_inv); - } - } - if (capability == CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY) { - if (getIOFromSide(facing) == PaintFillerHopperBlock.EnumIO.white) { - return CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY.cast(white_paint); - } - if (getIOFromSide(facing) == PaintFillerHopperBlock.EnumIO.yellow) { - return CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY.cast(yellow_paint); - } - if (getIOFromSide(facing) == PaintFillerHopperBlock.EnumIO.red) { - return CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY.cast(red_paint); - } - } - - return super.getCapability(capability, facing); - } - - public void updateSide(EnumFacing facing, EntityPlayer player) { - int id = 0; - if (facing == EnumFacing.UP) { - if (up < 4) { - up++; - id = up; - } else { - up = 0; - } - } - if (facing == EnumFacing.NORTH) { - if (north < 4) { - north++; - id = north; - } else { - north = 0; - } - } - if (facing == EnumFacing.EAST) { - if (east < 4) { - east++; - id = east; - } else { - east = 0; - } - } - if (facing == EnumFacing.SOUTH) { - if (south < 4) { - south++; - id = south; - } else { - south = 0; - } - } - if (facing == EnumFacing.WEST) { - if (west < 4) { - west++; - id = west; - } else { - west = 0; - } - } - if (player.world.isRemote) { - switch(id) { - case 0: - player.sendMessage(new TextComponentString("Transfer port closed")); - break; - case 1: - player.sendMessage(new TextComponentString("Transfer port set to White Paint")); - break; - case 2: - player.sendMessage(new TextComponentString("Transfer port set to Yellow Paint")); - break; - case 3: - player.sendMessage(new TextComponentString("Transfer port set to Red Paint")); - break; - case 4: - player.sendMessage(new TextComponentString("Transfer port set to Items")); - break; - } - } - - sendUpdates(); - } - - int lastWhite = 0; - int lastYellow = 0; - int lastRed = 0; - - @Override - public void update() { - if (!world.isRemote) { - if (world.getTileEntity(pos.offset(EnumFacing.DOWN)) instanceof PaintFillerEntity) { - PaintFillerEntity te = (PaintFillerEntity) world.getTileEntity(pos.offset(EnumFacing.DOWN)); - int amt = 50; - - if (is_output) { - if (te.white_paint.getFluidAmount() + amt <= PaintFillerEntity.FILLER_TANK_CAP && white_paint.getFluidAmount() >= amt) { - te.white_paint.fill(white_paint.drain(50, true), true); - } - - if (te.yellow_paint.getFluidAmount() + amt <= PaintFillerEntity.FILLER_TANK_CAP && yellow_paint.getFluidAmount() >= amt) { - te.yellow_paint.fill(yellow_paint.drain(50, true), true); - } - - if (te.red_paint.getFluidAmount() + amt <= PaintFillerEntity.FILLER_TANK_CAP && red_paint.getFluidAmount() >= amt) { - te.red_paint.fill(red_paint.drain(50, true), true); - } - - inventory.setStackInSlot(0, te.inventory.insertItem(PaintFillerContainer.WHITE_DYE, inventory.getStackInSlot(0), false)); - inventory.setStackInSlot(1, te.inventory.insertItem(PaintFillerContainer.YELLOW_DYE, inventory.getStackInSlot(1), false)); - inventory.setStackInSlot(2, te.inventory.insertItem(PaintFillerContainer.RED_DYE, inventory.getStackInSlot(2), false)); - } else { - if (white_paint.getFluidAmount() + amt <= FILLER_TANK_CAP && te.white_paint.getFluidAmount() >= amt) { - white_paint.fill(te.white_paint.drain(50, true), true); - } - - if (yellow_paint.getFluidAmount() + amt <= FILLER_TANK_CAP && te.yellow_paint.getFluidAmount() >= amt) { - yellow_paint.fill(te.yellow_paint.drain(50, true), true); - } - - if (red_paint.getFluidAmount() + amt <= FILLER_TANK_CAP && te.red_paint.getFluidAmount() >= amt) { - red_paint.fill(te.red_paint.drain(50, true), true); - } - - te.inventory.setStackInSlot(PaintFillerContainer.WHITE_DYE, te.inventory.insertItem(0, te.inventory.getStackInSlot(PaintFillerContainer.WHITE_DYE), false)); - te.inventory.setStackInSlot(PaintFillerContainer.YELLOW_DYE, te.inventory.insertItem(1, te.inventory.getStackInSlot(PaintFillerContainer.YELLOW_DYE), false)); - te.inventory.setStackInSlot(PaintFillerContainer.RED_DYE, te.inventory.insertItem(2, te.inventory.getStackInSlot(PaintFillerContainer.RED_DYE), false)); - } - } - - - //Sync updates when it fills - if (lastWhite != white_paint.getFluidAmount() || lastYellow != yellow_paint.getFluidAmount() || lastRed != red_paint.getFluidAmount()) { - lastWhite = white_paint.getFluidAmount(); - lastYellow = yellow_paint.getFluidAmount(); - lastRed = red_paint.getFluidAmount(); - - sendUpdates(); - } - } - } - - public int getSideUp() { - return up; - } - - public int getSideNorth() { - return north; - } - - public int getSideEast() { - return east; - } - - public int getSideSouth() { - return south; - } - - public int getSideWest() { - return west; - } - - public boolean getOutput() { - return is_output; - } - - public void toggleOutputMode(EntityPlayer player) { - is_output = !is_output; - if (player.world.isRemote) { - player.sendMessage(new TextComponentString("Output mode: " + is_output)); - } - sendUpdates(); - } - - public PaintFillerHopperBlock.EnumIO getIOFromSide(EnumFacing facing) { - int dir = 4; - if (facing == EnumFacing.UP) { dir = up; } - if (facing == EnumFacing.NORTH) { dir = north; } - if (facing == EnumFacing.EAST) { dir = east; } - if (facing == EnumFacing.SOUTH) { dir = south; } - if (facing == EnumFacing.WEST) { dir = west; } - - return PaintFillerHopperBlock.EnumIO.byId(dir); - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("items")) { - inventory.deserializeNBT((NBTTagCompound) nbt.getTag("items")); - } - if (nbt.hasKey("paint_white")) { - white_paint.readFromNBT((NBTTagCompound) nbt.getTag("paint_white")); - } - if (nbt.hasKey("paint_yellow")) { - yellow_paint.readFromNBT((NBTTagCompound) nbt.getTag("paint_yellow")); - } - if (nbt.hasKey("paint_red")) { - red_paint.readFromNBT((NBTTagCompound) nbt.getTag("paint_red")); - } - - up = nbt.getInteger("up"); - north = nbt.getInteger("north"); - east = nbt.getInteger("east"); - south = nbt.getInteger("south"); - west = nbt.getInteger("west"); - - is_output = nbt.getBoolean("is_output"); - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("paint_white", white_paint.writeToNBT(new NBTTagCompound())); - nbt.setTag("paint_yellow", yellow_paint.writeToNBT(new NBTTagCompound())); - nbt.setTag("paint_red", red_paint.writeToNBT(new NBTTagCompound())); - - nbt.setTag("items", inventory.serializeNBT()); - - nbt.setInteger("up", up); - nbt.setInteger("north", north); - nbt.setInteger("east", east); - nbt.setInteger("south", south); - nbt.setInteger("west", west); - - nbt.setBoolean("is_output", is_output); - return nbt; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/hopper/PaintFillerHopperStackHandler.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/hopper/PaintFillerHopperStackHandler.java deleted file mode 100644 index 91e908ad..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintfiller/hopper/PaintFillerHopperStackHandler.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintfiller.hopper; - -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.util.NonNullList; -import net.minecraftforge.items.ItemStackHandler; -import net.minecraftforge.oredict.OreDictionary; - -public class PaintFillerHopperStackHandler extends ItemStackHandler { - - private final ItemStackHandler internalStackHandler; - boolean electric; - - public PaintFillerHopperStackHandler(ItemStackHandler ish, boolean electric) { - super(); - this.electric = electric; - internalStackHandler = ish; - } - - @Override - public void setSize(int size) { - stacks = NonNullList.withSize(size, ItemStack.EMPTY); - } - - @Override - public void setStackInSlot(int slot, ItemStack stack) { - internalStackHandler.setStackInSlot(slot, stack); - } - - @Override - public int getSlots() { - return internalStackHandler.getSlots(); - } - - @Override - public ItemStack getStackInSlot(int slot) { - return internalStackHandler.getStackInSlot(slot); - } - - @Override - public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - if (slot == 0 && isDye(stack, "dyeWhite")) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - if (slot == 1 && isDye(stack, "dyeYellow")) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - if (slot == 2 && isDye(stack, "dyeRed")) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - if (slot == 3 && stack.getItem().getUnlocalizedName().compareTo("item.forge.bucketFilled") == 0) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - if (slot == 4 && stack.getItem() == Items.BUCKET) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - return stack; - } - - @Override - public ItemStack extractItem(int slot, int amount, boolean simulate) { - if (slot != 3) { - return internalStackHandler.extractItem(slot, amount, simulate); - } - return ItemStack.EMPTY; - } - - public boolean isDye(ItemStack stack, String name) { - if (!stack.isEmpty()) { - for (int id : OreDictionary.getOreIDs(stack)) { - if (OreDictionary.getOreName(id).equals(name)) { - return true; - } - } - } - return false; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenBlock.java deleted file mode 100644 index 756cda59..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenBlock.java +++ /dev/null @@ -1,141 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintoven; - -import java.util.List; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.RoadTEBlock; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidUtil; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class PaintOvenBlock extends RoadTEBlock { - - public PaintOvenBlock(String name, boolean electric) { - super(name, electric, 11); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(ROTATION, RoadTEBlock.EnumRotation.north) - .withProperty(FURNACE_ACTIVE, false) - .withProperty(BASE_PLATE, true)); - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("roads.gui.paint_oven.tooltip_1")); - tooltip.add(I18n.format("roads.gui.paint_oven.tooltip_2")); - } - - @Override - public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - ItemStack held = player.getHeldItem(EnumHand.MAIN_HAND); - if (held.getItem() == Items.BUCKET) { - if (world.getTileEntity(pos) != null && world.getTileEntity(pos) instanceof PaintOvenEntity) { - PaintOvenEntity te = (PaintOvenEntity) world.getTileEntity(pos); - if (te.paint.getFluidAmount() >= 1000) { - if (!player.isCreative()) { - if (held.getCount() > 1) { - held.setCount(held.getCount() - 1); - } else { - player.inventory.setInventorySlotContents(player.inventory.currentItem, ItemStack.EMPTY); - } - } - player.addItemStackToInventory(FluidUtil.getFilledBucket(te.paint.getFluid())); - te.paint.drain(1000, true); - te.sendUpdates(); - - return true; - } - } - } - - if (held.getItem() == Items.WATER_BUCKET) { - if (world.getTileEntity(pos) != null && world.getTileEntity(pos) instanceof PaintOvenEntity) { - PaintOvenEntity te = (PaintOvenEntity) world.getTileEntity(pos); - if (te.water.getFluidAmount() + 1000 <= PaintOvenEntity.FILLER_TANK_CAP ) { - if (!player.isCreative()) { - if (held.getCount() > 1) { - held.setCount(held.getCount() - 1); - } else { - player.inventory.setInventorySlotContents(player.inventory.currentItem, ItemStack.EMPTY); - } - player.addItemStackToInventory(new ItemStack(Items.BUCKET)); - } - if (te.water.getFluidAmount() > 0) { - te.water.fill(new FluidStack(te.water.getFluid().getFluid(), 1000), true); - } else { - te.water.setFluid(new FluidStack(FluidRegistry.WATER, 1000)); - } - te.sendUpdates(); - - return true; - } - } - } - - return super.onBlockActivated(world, pos, state, player, hand, facing, hitX, hitY, hitZ); - } - - @Override - public TileEntity createTileEntity(World worldIn, IBlockState state) { - if (electric) { - return new PaintOvenElectricEntity(); - } - return new PaintOvenEntity(); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - return state.withProperty(FURNACE_ACTIVE, isFurnaceEnabled(state, world, pos)).withProperty(BASE_PLATE, hasBasePlate(world, pos)); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {ROTATION, FURNACE_ACTIVE, BASE_PLATE}); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - int meta = getMetaFromState(state); - - if (meta == 0) { return new AxisAlignedBB(0.125D, 0.0D, 0.0D, 0.875D, 1.0D, 0.84375D); } - if (meta == 1) { return new AxisAlignedBB(0.15625D, 0.0D, 0.125D, 1.0D, 1.0D, 0.875D); } - if (meta == 2) { return new AxisAlignedBB(0.125D, 0.0D, 0.15625D, 0.875D, 1.0D, 1.0D); } - if (meta == 3) { return new AxisAlignedBB(0.0D, 0.0D, 0.125D, 0.84375D, 1.0D, 0.875D); } - - - return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 1.0D, 1.0D); - } - - @Override - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBoundingBox(state, world, pos); - } - - @Override - public void openGui(World world, BlockPos pos, EntityPlayer player) { - TileEntity te = world.getTileEntity(pos); - if (!world.isRemote) { - if (te != null && te instanceof RoadTileEntity) { - player.openGui(FurenikusRoads.instance, (electric ? 12 : 11), world, pos.getX(), pos.getY(), pos.getZ()); - } - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenContainer.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenContainer.java deleted file mode 100644 index 871f4c6d..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenContainer.java +++ /dev/null @@ -1,154 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintoven; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.SlotFuel; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.SlotDye; -import com.silvaniastudios.roads.network.ClientGuiUpdatePacket; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.inventory.IContainerListener; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.Slot; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.IItemHandler; - -public class PaintOvenContainer extends Container { - - public static final int DYE = 0; - public static final int FUEL = 1; - - private boolean isElectric = false; - private int energy; - private int water; - private int paint; - private int tick; - private int fuel; - private int fuelCap; - - public PaintOvenEntity tileEntity; - - - public PaintOvenContainer(InventoryPlayer invPlayer, PaintOvenEntity tileEntity, boolean isElectric) { - this.tileEntity = tileEntity; - - IItemHandler itemHandler = this.tileEntity.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, null); - addSlotToContainer(new SlotDye(itemHandler, DYE, 80, 25, "dyeAny")); - if (!isElectric) { addSlotToContainer(new SlotFuel(itemHandler, FUEL, 174, 32)); } - - this.isElectric = isElectric; - addPlayerSlots(invPlayer); - } - - private void addPlayerSlots(IInventory playerInventory) { - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 9; j++) { - int x = 8 + j * 18; - int y = i * 18 + 74; - this.addSlotToContainer(new Slot(playerInventory, j + i * 9 + 9, x, y)); - } - } - - for (int i = 0; i < 9; i++) { - int x = 8 + i * 18; - int y = 58 + 74; - this.addSlotToContainer(new Slot(playerInventory, i, x, y)); - } - } - - @Override - public void detectAndSendChanges() { - PaintOvenElectricEntity poee = null; - - if (this.isElectric) { - poee = (PaintOvenElectricEntity) tileEntity; - } - - super.detectAndSendChanges(); - - for (int i = 0; i < this.listeners.size(); ++i) { - IContainerListener listener = this.listeners.get(i); - if (listener instanceof EntityPlayer) { - if (poee != null) { - if (this.energy != poee.energy.getEnergyStored()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(0, poee.energy.getEnergyStored()), (EntityPlayerMP) listener); - } - } - - if (this.paint != tileEntity.paint.getFluidAmount()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(1, tileEntity.paint.getFluidAmount()), (EntityPlayerMP) listener); - } - if (this.water != tileEntity.water.getFluidAmount()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(2, tileEntity.water.getFluidAmount()), (EntityPlayerMP) listener); - } - if (this.tick != tileEntity.timerCount) { - listener.sendWindowProperty(this, 10, tileEntity.timerCount); - } - if (this.fuel != tileEntity.fuel_remaining) { - listener.sendWindowProperty(this, 11, tileEntity.fuel_remaining); - } - if (this.fuelCap != tileEntity.last_fuel_cap) { - listener.sendWindowProperty(this, 12, tileEntity.last_fuel_cap); - } - } - } - - if (poee != null) { this.energy = poee.energy.getEnergyStored(); } - this.paint = tileEntity.paint.getFluidAmount(); - this.water = tileEntity.water.getFluidAmount(); - this.tick = tileEntity.timerCount; - this.fuel = tileEntity.fuel_remaining; - this.fuelCap = tileEntity.last_fuel_cap; - } - - @SideOnly(Side.CLIENT) - public void updateProgressBar(int id, int data) { - FurenikusRoads.debug(1, "Paint Oven syncing ID: " + id + ", data: " + data); - if (id == 10) { - tileEntity.timerCount = data; - } - if (id == 11) { - tileEntity.fuel_remaining = data; - } - if (id == 12) { - tileEntity.last_fuel_cap = data; - } - } - - @Override - public boolean canInteractWith(EntityPlayer playerIn) { - return tileEntity.canInteractWith(playerIn); - } - - @Override - public ItemStack transferStackInSlot(EntityPlayer player, int slotId) { - ItemStack stack = ItemStack.EMPTY; - Slot slot = this.inventorySlots.get(slotId); - - if (slot != null && slot.getHasStack()) { - ItemStack stack1 = slot.getStack(); - stack = stack1.copy(); - - if (slotId < tileEntity.inventory.getSlots()) { - if (!this.mergeItemStack(stack1, tileEntity.inventory.getSlots(), this.inventorySlots.size(), true)) { - return ItemStack.EMPTY; - } - } else if (!this.mergeItemStack(stack1, 0, tileEntity.inventory.getSlots(), false)) { - return ItemStack.EMPTY; - } - - if (stack1.isEmpty()) { - slot.putStack(ItemStack.EMPTY); - } else { - slot.onSlotChanged(); - } - } - return stack; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenElectricEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenElectricEntity.java deleted file mode 100644 index 6427d189..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenElectricEntity.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintoven; - -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.FREnergyStorage; - -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; - -public class PaintOvenElectricEntity extends PaintOvenEntity implements ITickable, ICapabilityProvider { - - public boolean isProcessing = false; - int consumedEnergy = 0; - - public PaintOvenElectricEntity() {} - - public FREnergyStorage energy = new FREnergyStorage(RoadsConfig.machine.electricPaintOvenEnergyStorage, RoadsConfig.machine.electricPaintOvenEnergyTransferRate) {}; - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return getCapability(capability, facing) != null; - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return CapabilityEnergy.ENERGY.cast(energy); - } - - return super.getCapability(capability, facing); - } - - @Override - public void update() { - if (energy.getEnergyStored() > RoadsConfig.machine.electricPaintOvenEnergyConsumption) { - //energy per tick - int ept = RoadsConfig.machine.electricPaintOvenEnergyConsumption / RoadsConfig.machine.electricPaintOvenTickRate; - if (timerCount < RoadsConfig.machine.electricPaintOvenTickRate) { - if (shouldTick()) { - isProcessing = true; - timerCount++; - energy.extractEnergy(ept, false); - consumedEnergy += ept; - } else { - isProcessing = false; - timerCount = 0; - } - } else { - //Round up energy usage to config value. eg 1000 usage, at 30 ticks, would only use 990 energy. This uses the other 10. - if (consumedEnergy < RoadsConfig.machine.electricPaintOvenEnergyConsumption) { - energy.extractEnergy(RoadsConfig.machine.electricPaintOvenEnergyConsumption - consumedEnergy, false); - } - process(); - timerCount = 0; - } - } - - if (!world.isRemote) { - if (lastPaint != paint.getFluidAmount() || lastWater != water.getFluidAmount()) { - lastPaint = paint.getFluidAmount(); - lastWater = water.getFluidAmount(); - - sendUpdates(); - } - } - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("energy")) { - energy.deserializeNBT((NBTTagCompound) nbt.getTag("energy")); - } - super.readNBT(nbt); - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("energy", energy.serializeNBT()); - return super.writeNBT(nbt); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenEntity.java deleted file mode 100644 index ff7e4b51..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenEntity.java +++ /dev/null @@ -1,210 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintoven; - -import javax.annotation.Nonnull; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; -import com.silvaniastudios.roads.fluids.FRFluids; - -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidTank; -import net.minecraftforge.fluids.capability.CapabilityFluidHandler; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.ItemStackHandler; - -public class PaintOvenEntity extends RoadTileEntity implements ITickable, ICapabilityProvider { - - public static final int FILLER_TANK_CAP = 64000; - public int timerCount = 0; - - public ItemStackHandler inventory = new ItemStackHandler(2) { - @Override - public boolean isItemValid(int slot, @Nonnull ItemStack stack) { - if (isDye(stack, "dyeWhite") || isDye(stack, "dyeYellow") || isDye(stack, "dyeRed")) { - return true; - } - return false; - } - }; - - public FluidTank water = new FluidTank(FILLER_TANK_CAP) { - @Override - public boolean canFillFluidType(FluidStack fluid) { - return fluid.getFluid().getName().equalsIgnoreCase("water"); - } - }; - - public FluidTank paint = new FluidTank(FILLER_TANK_CAP) { - @Override - public boolean canFillFluidType(FluidStack fluid) { - return fluid.getFluid() == FRFluids.white_paint || fluid.getFluid() == FRFluids.yellow_paint || fluid.getFluid() == FRFluids.red_paint; - } - }; - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - return getCapability(capability, facing) != null; - } - if (capability == CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY) { - return getCapability(capability, facing) != null; - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(inventory); - } - if (capability == CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY) { - if (facing == EnumFacing.UP || facing == EnumFacing.DOWN) { - return CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY.cast(water); - } else { - return CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY.cast(paint); - } - } - - return super.getCapability(capability, facing); - } - - int lastPaint = 0; - int lastWater = 0; - - @Override - public void update() { - if (fuel_remaining > 0) { - fuel_remaining--; - } else if (fuel_remaining <= 0) { - if (!inventory.getStackInSlot(PaintOvenContainer.FUEL).isEmpty()) { - fuel_remaining = TileEntityFurnace.getItemBurnTime(inventory.getStackInSlot(PaintOvenContainer.FUEL)); - last_fuel_cap = fuel_remaining; - if (inventory.getStackInSlot(PaintOvenContainer.FUEL).getItem() == Items.LAVA_BUCKET) { - inventory.setStackInSlot(PaintOvenContainer.FUEL, new ItemStack(Items.BUCKET)); - } else { - inventory.extractItem(PaintOvenContainer.FUEL, 1, false); - } - sendUpdates(); - } else { - timerCount = 0; - } - } - - if (timerCount < RoadsConfig.machine.paintOvenTickRate && fuel_remaining > 0) { - if (shouldTick()) { - timerCount++; - } else { - timerCount = 0; - } - } else { - if (fuel_remaining > 0) { - process(); - } - timerCount = 0; - } - - if (!world.isRemote) { - if (lastPaint != paint.getFluidAmount() || lastWater != water.getFluidAmount()) { - lastPaint = paint.getFluidAmount(); - lastWater = water.getFluidAmount(); - - sendUpdates(); - } - } - } - - public void process() { - FurenikusRoads.debug(2, "Paint Oven at" + formatPosition(pos) + "processing"); - if (!world.isRemote) { - if (water.getFluidAmount() >= 1000 && paint.getFluidAmount() + 1000 <= paint.getCapacity()) { - int dyeCol = -1; - boolean filled = false; - ItemStack dye = inventory.getStackInSlot(PaintOvenContainer.DYE); - - if (isDye(dye, "dyeWhite")) { dyeCol = 0; } - if (isDye(dye, "dyeYellow")) { dyeCol = 1; } - if (isDye(dye, "dyeRed")) { dyeCol = 2; } - - if (paint.getFluidAmount() > 0) { - if (dyeCol == 0 && paint.getFluid().getFluid() == FRFluids.white_paint) { - paint.fill(new FluidStack(FRFluids.white_paint, 1000), true); - filled = true; - } else if (dyeCol == 1 && paint.getFluid().getFluid() == FRFluids.yellow_paint) { - paint.fill(new FluidStack(FRFluids.yellow_paint, 1000), true); - filled = true; - } else if (dyeCol == 2 && paint.getFluid().getFluid() == FRFluids.red_paint) { - paint.fill(new FluidStack(FRFluids.red_paint, 1000), true); - filled = true; - } - } else { - if (dyeCol == 0) { - paint.fill(new FluidStack(FRFluids.white_paint, 1000), true); - filled = true; - } - if (dyeCol == 1) { - paint.fill(new FluidStack(FRFluids.yellow_paint, 1000), true); - filled = true; - } - if (dyeCol == 2) { - paint.fill(new FluidStack(FRFluids.red_paint, 1000), true); - filled = true; - } - } - if (filled) { - water.drain(1000, true); - inventory.extractItem(PaintOvenContainer.DYE, 1, false); - } - } - sendUpdates(); - } - } - - public boolean shouldTick() { - if (water.getFluidAmount() >= 1000 && - (fuel_remaining > 0 || hasCapability(CapabilityEnergy.ENERGY, null)) && - inventory.getStackInSlot(PaintOvenContainer.DYE).getCount() >= 1 && - paint.getFluidAmount() + 1000 <= paint.getCapacity()) { - return true; - } - return false; - } - - @Override - public void readNBT(NBTTagCompound nbt) { - fuel_remaining = nbt.getInteger("fuel"); - last_fuel_cap = nbt.getInteger("fuel_last_used"); - - if (nbt.hasKey("items")) { - inventory.deserializeNBT((NBTTagCompound) nbt.getTag("items")); - } - if (nbt.hasKey("water")) { - water.readFromNBT((NBTTagCompound) nbt.getTag("water")); - } - if (nbt.hasKey("paint")) { - paint.readFromNBT((NBTTagCompound) nbt.getTag("paint")); - } - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setInteger("fuel", fuel_remaining); - nbt.setInteger("fuel_last_used", last_fuel_cap); - - nbt.setTag("items", inventory.serializeNBT()); - nbt.setTag("water", water.writeToNBT(new NBTTagCompound())); - nbt.setTag("paint", paint.writeToNBT(new NBTTagCompound())); - - return nbt; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenStackHandler.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenStackHandler.java deleted file mode 100644 index 6bb2269f..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/paintoven/PaintOvenStackHandler.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.paintoven; - -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.NonNullList; -import net.minecraftforge.items.ItemStackHandler; -import net.minecraftforge.oredict.OreDictionary; - -public class PaintOvenStackHandler extends ItemStackHandler { - - private final ItemStackHandler internalStackHandler; - boolean electric; - - public PaintOvenStackHandler(ItemStackHandler ish, boolean electric) { - super(); - this.electric = electric; - internalStackHandler = ish; - } - - @Override - public void setSize(int size) { - stacks = NonNullList.withSize(size, ItemStack.EMPTY); - } - - @Override - public void setStackInSlot(int slot, ItemStack stack) { - internalStackHandler.setStackInSlot(slot, stack); - } - - @Override - public int getSlots() { - return internalStackHandler.getSlots(); - } - - @Override - public ItemStack getStackInSlot(int slot) { - return internalStackHandler.getStackInSlot(slot); - } - - @Override - public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - if (slot == PaintOvenContainer.FUEL && TileEntityFurnace.getItemBurnTime(stack) > 0 && !electric) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - if (slot == PaintOvenContainer.DYE && (isDye(stack, "dyeWhite") || isDye(stack, "dyeYellow") || isDye(stack, "dyeRed"))) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - return stack; - } - - @Override - public ItemStack extractItem(int slot, int amount, boolean simulate) { - return ItemStack.EMPTY; - } - - public boolean isDye(ItemStack stack, String name) { - if (!stack.isEmpty()) { - for (int id : OreDictionary.getOreIDs(stack)) { - if (OreDictionary.getOreName(id).equals(name)) { - return true; - } - } - } - return false; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/CompactorRecipes.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/CompactorRecipes.java deleted file mode 100644 index b10fdd14..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/CompactorRecipes.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.recipes; - -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorContainer; - -import net.minecraft.item.ItemStack; -import net.minecraft.item.crafting.Ingredient; -import net.minecraftforge.common.crafting.CraftingHelper; -import net.minecraftforge.items.ItemStackHandler; - -public class CompactorRecipes { - - private final Ingredient ingredient; - private final ItemStack input; - private final ItemStack result; - - public CompactorRecipes(ItemStack i, ItemStack r) { - this.ingredient = CraftingHelper.getIngredient(i); - this.input = i; - this.result = r; - } - - public boolean test(Ingredient ing, ItemStack input, int amt) { - if (input == ItemStack.EMPTY) { - return ing.test(input); - } - return ing.test(input) && input.getCount() >= amt; - } - - public ItemStack getCraftingResult(ItemStackHandler inventory, int sizeSetting) { - ItemStack in = inventory.getStackInSlot(CompactorContainer.FRAGMENTS); - - if (test(ingredient, in, sizeSetting+1)) { - ItemStack out = this.result.copy(); - out.setItemDamage(sizeSetting); - return out; - } - return ItemStack.EMPTY; - } - - public ItemStack getInputStack() { - return input; - } - - public ItemStack getOutputStack() { - return result; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/CrusherRecipes.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/CrusherRecipes.java deleted file mode 100644 index fd6a8635..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/CrusherRecipes.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.recipes; - -import net.minecraft.item.ItemStack; -import net.minecraft.item.crafting.Ingredient; -import net.minecraftforge.common.crafting.CraftingHelper; -import net.minecraftforge.items.ItemStackHandler; - -public class CrusherRecipes { - - private final Ingredient ingredient; - private final ItemStack input; - private final ItemStack result; - - public CrusherRecipes(ItemStack i, ItemStack r) { - this.ingredient = CraftingHelper.getIngredient(i); - this.input = i; - this.result = r; - } - - public boolean test(ItemStack input) { - return ingredient.test(input); - } - - public ItemStack getCraftingResult(ItemStackHandler inv) { - return this.result.copy(); - } - - public ItemStack getInputStack() { - return input; - } - - public ItemStack getOutputStack() { - return result; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/FabricatorRecipes.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/FabricatorRecipes.java deleted file mode 100644 index 046b55da..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/FabricatorRecipes.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.recipes; - -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorContainer; - -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.ItemStackHandler; - -public class FabricatorRecipes { - - private final int id; - private final ItemStack is1; - private final ItemStack is2; - private final ItemStack is3; - private final ItemStack is4; - private final ItemStack is5; - private final ItemStack is6; - private final ItemStack result; - - public FabricatorRecipes(int id, ItemStack i1, ItemStack i2, ItemStack i3, ItemStack i4, ItemStack i5, ItemStack i6, ItemStack result) { - this.is1 = i1; - this.is2 = i2; - this.is3 = i3; - this.is4 = i4; - this.is5 = i5; - this.is6 = i6; - - this.id = id; - - this.result = result; - } - - public boolean test(ItemStack ingredient, ItemStack input) { - if (ingredient != ItemStack.EMPTY) { - return ingredient.getItem() == input.getItem() && ingredient.getItemDamage() == input.getItemDamage() && input.getCount() >= ingredient.getCount(); - } - return true; - } - - public ItemStack getCraftingResult(ItemStackHandler inventory, int id) { - if (id != this.id) { - return ItemStack.EMPTY; - } - ItemStack slotIn1 = inventory.getStackInSlot(FabricatorContainer.IN_1); - ItemStack slotIn2 = inventory.getStackInSlot(FabricatorContainer.IN_2); - ItemStack slotIn3 = inventory.getStackInSlot(FabricatorContainer.IN_3); - ItemStack slotIn4 = inventory.getStackInSlot(FabricatorContainer.IN_4); - ItemStack slotIn5 = inventory.getStackInSlot(FabricatorContainer.IN_5); - ItemStack slotIn6 = inventory.getStackInSlot(FabricatorContainer.IN_6); - - boolean slot1Valid = test(is1, slotIn1); - boolean slot2Valid = test(is2, slotIn2); - boolean slot3Valid = test(is3, slotIn3); - boolean slot4Valid = test(is4, slotIn4); - boolean slot5Valid = test(is5, slotIn5); - boolean slot6Valid = test(is6, slotIn6); - - if (slot1Valid && slot2Valid && slot3Valid && slot4Valid && slot5Valid && slot6Valid) { - return result.copy(); - } - return ItemStack.EMPTY; - } - - public void processRecipe(ItemStackHandler inventory, int id) { - if (getCraftingResult(inventory, id) != ItemStack.EMPTY) { - if (inventory.insertItem(FabricatorContainer.OUTPUT, result, true) == ItemStack.EMPTY) { - if (is1 != ItemStack.EMPTY) { inventory.extractItem(FabricatorContainer.IN_1, is1.getCount(), false); } - if (is2 != ItemStack.EMPTY) { inventory.extractItem(FabricatorContainer.IN_2, is2.getCount(), false); } - if (is3 != ItemStack.EMPTY) { inventory.extractItem(FabricatorContainer.IN_3, is3.getCount(), false); } - if (is4 != ItemStack.EMPTY) { inventory.extractItem(FabricatorContainer.IN_4, is4.getCount(), false); } - if (is5 != ItemStack.EMPTY) { inventory.extractItem(FabricatorContainer.IN_5, is5.getCount(), false); } - if (is6 != ItemStack.EMPTY) { inventory.extractItem(FabricatorContainer.IN_6, is6.getCount(), false); } - - inventory.insertItem(FabricatorContainer.OUTPUT, result.copy(), false); - } - } - } - - public ItemStack getInput1() { return is1; } - public ItemStack getInput2() { return is2; } - public ItemStack getInput3() { return is3; } - public ItemStack getInput4() { return is4; } - public ItemStack getInput5() { return is5; } - public ItemStack getInput6() { return is6; } - - public ItemStack getOutput() { return result; } - public int getId() { return this.id; } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/RecipeRegistry.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/RecipeRegistry.java deleted file mode 100644 index 0d5bce2d..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/RecipeRegistry.java +++ /dev/null @@ -1,363 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.recipes; - -import java.util.ArrayList; -import java.util.Map; - -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.fluids.FRFluids; -import com.silvaniastudios.roads.items.FRItems; - -import net.minecraft.init.Blocks; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fml.common.Loader; - -public class RecipeRegistry { - - public static ArrayList compactorRecipes = new ArrayList(); - public static ArrayList roadFactoryRecipes = new ArrayList(); - public static ArrayList crusherRecipes = new ArrayList(); - public static ArrayList tarDistillerRecipes = new ArrayList(); - public static ArrayList fabricatorRecipes = new ArrayList(); - - public static ArrayList tar = new ArrayList(); - - public static void init() { - for (Map.Entry entry : FluidRegistry.getRegisteredFluids().entrySet()) { - String k = entry.getKey(); - Fluid v = entry.getValue(); - - if (RoadsConfig.general.printFluidListOnStartup) { System.out.println("Fluid " + v.getLocalizedName(new FluidStack(v, 1)) + ", registered as " + k); } - - String[] tarAlts = RoadsConfig.general.tarAlternatives; - for (int i = 0; i < tarAlts.length; i++) { - if (k.equalsIgnoreCase(tarAlts[i])) { - tar.add(new FluidStack(v, 100)); - } - } - } - - registerCompactorRecipes(); - registerTarDistillerRecipes(); - registerRoadFactoryRecipes(); - registerTarmacCutterRecipes(); - registerCrusherRecipes(); - registerFabricatorRecipes(); - - if (Loader.isModLoaded("thermalexpansion")) { - ThermalExpansionRecipes.registerThermalExpansionRecipes(); - } - } - - public static void registerCompactorRecipes() { - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_standard, 1), new ItemStack(FRBlocks.road_block_standard, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_concrete_1, 1), new ItemStack(FRBlocks.road_block_concrete_1, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_concrete_2, 1), new ItemStack(FRBlocks.road_block_concrete_2, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_light, 1), new ItemStack(FRBlocks.road_block_light, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_fine, 1), new ItemStack(FRBlocks.road_block_fine, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_dark, 1), new ItemStack(FRBlocks.road_block_dark, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_pale, 1), new ItemStack(FRBlocks.road_block_pale, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_red, 1), new ItemStack(FRBlocks.road_block_red, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_blue, 1), new ItemStack(FRBlocks.road_block_blue, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_white, 1), new ItemStack(FRBlocks.road_block_white, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_yellow, 1), new ItemStack(FRBlocks.road_block_yellow, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_green, 1), new ItemStack(FRBlocks.road_block_green, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_muddy, 1), new ItemStack(FRBlocks.road_block_muddy_dried, 1))); - - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_stone, 1), new ItemStack(FRBlocks.road_block_stone, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_grass, 1), new ItemStack(FRBlocks.road_block_grass, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_dirt, 1), new ItemStack(FRBlocks.road_block_dirt, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_gravel, 1), new ItemStack(FRBlocks.road_block_gravel, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.tarmac_fragment_sand, 1), new ItemStack(FRBlocks.road_block_sand, 1))); - - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.sidewalk_fragment_standard, 1), new ItemStack(FRBlocks.sidewalk, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.sidewalk_fragment_clean, 1), new ItemStack(FRBlocks.sidewalk_clean, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.sidewalk_fragment_dark, 1), new ItemStack(FRBlocks.sidewalk_dark, 1))); - compactorRecipes.add(new CompactorRecipes(new ItemStack(FRItems.sidewalk_fragment_tan, 1), new ItemStack(FRBlocks.sidewalk_tan, 1))); - } - - public static void registerTarDistillerRecipes() { - tarDistillerRecipes.add(new TarDistillerRecipes(null, new ItemStack(Items.COAL, 1, 0), new FluidStack(FRFluids.tar, 1000), null, new ItemStack(FRItems.coal_coke), ItemStack.EMPTY)); - tarDistillerRecipes.add(new TarDistillerRecipes(null, new ItemStack(Items.COAL, 1, 1), new FluidStack(FRFluids.tar, 750), null, new ItemStack(FRItems.coal_coke), ItemStack.EMPTY)); - tarDistillerRecipes.add(new TarDistillerRecipes(null, new ItemStack(Blocks.COAL_BLOCK), new FluidStack(FRFluids.tar, 9000), null, new ItemStack(FRItems.coal_coke, 9), ItemStack.EMPTY)); - - tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 100), new ItemStack(Blocks.LOG, 1, 0), new FluidStack(FRFluids.tar, 100), null, ItemStack.EMPTY, ItemStack.EMPTY)); - tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 100), new ItemStack(Blocks.LOG, 1, 1), new FluidStack(FRFluids.tar, 100), null, ItemStack.EMPTY, ItemStack.EMPTY)); - tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 100), new ItemStack(Blocks.LOG, 1, 2), new FluidStack(FRFluids.tar, 100), null, ItemStack.EMPTY, ItemStack.EMPTY)); - tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 100), new ItemStack(Blocks.LOG, 1, 3), new FluidStack(FRFluids.tar, 100), null, ItemStack.EMPTY, ItemStack.EMPTY)); - tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 100), new ItemStack(Blocks.LOG2, 1, 0), new FluidStack(FRFluids.tar, 100), null, ItemStack.EMPTY, ItemStack.EMPTY)); - tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 100), new ItemStack(Blocks.LOG2, 1, 1), new FluidStack(FRFluids.tar, 100), null, ItemStack.EMPTY, ItemStack.EMPTY)); - - tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 15), new ItemStack(Blocks.PLANKS, 1, 0), new FluidStack(FRFluids.tar, 15), null, ItemStack.EMPTY, ItemStack.EMPTY)); - tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 15), new ItemStack(Blocks.PLANKS, 1, 1), new FluidStack(FRFluids.tar, 15), null, ItemStack.EMPTY, ItemStack.EMPTY)); - tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 15), new ItemStack(Blocks.PLANKS, 1, 2), new FluidStack(FRFluids.tar, 15), null, ItemStack.EMPTY, ItemStack.EMPTY)); - tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 15), new ItemStack(Blocks.PLANKS, 1, 3), new FluidStack(FRFluids.tar, 15), null, ItemStack.EMPTY, ItemStack.EMPTY)); - tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 15), new ItemStack(Blocks.PLANKS, 1, 4), new FluidStack(FRFluids.tar, 15), null, ItemStack.EMPTY, ItemStack.EMPTY)); - tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 15), new ItemStack(Blocks.PLANKS, 1, 5), new FluidStack(FRFluids.tar, 15), null, ItemStack.EMPTY, ItemStack.EMPTY)); - - if (Loader.isModLoaded("thermalfoundation")) { - ThermalFoundationRecipes.tfRecipes(); - } - } - - public static void registerRoadFactoryRecipes() { - for (int i = 0; i < tar.size(); i++) { - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(Blocks.STONE, 8, 0), ItemStack.EMPTY, new ItemStack(FRBlocks.road_block_stone, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(Blocks.STONE, 8, 1), ItemStack.EMPTY, new ItemStack(FRBlocks.road_block_pale, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(Blocks.STONE, 8, 3), ItemStack.EMPTY, new ItemStack(FRBlocks.road_block_light, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(Blocks.STONE, 8, 5), ItemStack.EMPTY, new ItemStack(FRBlocks.road_block_dark, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(Blocks.STONE, 8, 6), ItemStack.EMPTY, new ItemStack(FRBlocks.road_block_fine, 8, 15))); - - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(FRBlocks.generic_blocks, 8, 0), ItemStack.EMPTY, new ItemStack(FRBlocks.road_block_standard, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(Blocks.GRASS, 8, 0), ItemStack.EMPTY, new ItemStack(FRBlocks.road_block_grass, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(Blocks.DIRT, 8, 0), ItemStack.EMPTY, new ItemStack(FRBlocks.road_block_dirt, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(Blocks.GRAVEL, 8, 0), ItemStack.EMPTY, new ItemStack(FRBlocks.road_block_gravel, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(Blocks.SAND, 8, 0), ItemStack.EMPTY, new ItemStack(FRBlocks.road_block_sand, 8, 15))); - - roadFactoryRecipes.add(new RoadFactoryRecipes(null, new ItemStack(FRBlocks.road_block_standard, 8, 15), new ItemStack(Items.DYE, 1, 15), new ItemStack(FRBlocks.road_block_white, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(null, new ItemStack(FRBlocks.road_block_standard, 8, 15), new ItemStack(Items.DYE, 1, 11), new ItemStack(FRBlocks.road_block_yellow, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(null, new ItemStack(FRBlocks.road_block_standard, 8, 15), new ItemStack(Items.DYE, 1, 1), new ItemStack(FRBlocks.road_block_red, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(null, new ItemStack(FRBlocks.road_block_standard, 8, 15), new ItemStack(Items.DYE, 1, 2), new ItemStack(FRBlocks.road_block_green, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(null, new ItemStack(FRBlocks.road_block_standard, 8, 15), new ItemStack(Items.DYE, 1, 4), new ItemStack(FRBlocks.road_block_blue, 8, 15))); - - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(FRBlocks.generic_blocks, 8, 0), new ItemStack(Items.DYE, 1, 15), new ItemStack(FRBlocks.road_block_white, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(FRBlocks.generic_blocks, 8, 0), new ItemStack(Items.DYE, 1, 11), new ItemStack(FRBlocks.road_block_yellow, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(FRBlocks.generic_blocks, 8, 0), new ItemStack(Items.DYE, 1, 1), new ItemStack(FRBlocks.road_block_red, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(FRBlocks.generic_blocks, 8, 0), new ItemStack(Items.DYE, 1, 2), new ItemStack(FRBlocks.road_block_green, 8, 15))); - roadFactoryRecipes.add(new RoadFactoryRecipes(tar.get(i), new ItemStack(FRBlocks.generic_blocks, 8, 0), new ItemStack(Items.DYE, 1, 4), new ItemStack(FRBlocks.road_block_blue, 8, 15))); - } - } - - public static void registerTarmacCutterRecipes() { - - } - - public static void registerCrusherRecipes() { - crusherRecipes.add(new CrusherRecipes(new ItemStack(Blocks.STONE, 1, 0), new ItemStack(Blocks.COBBLESTONE, 1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(Blocks.COBBLESTONE, 1, 0), new ItemStack(Blocks.GRAVEL, 1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(Blocks.GRAVEL, 1, 0), new ItemStack(FRBlocks.generic_blocks, 1, 0))); - - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.generic_blocks, 1, 0), new ItemStack(Blocks.SAND, 1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.generic_blocks, 1, 1), new ItemStack(FRItems.cement_dust, 1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.generic_blocks, 1, 2), new ItemStack(FRItems.cement_dust, 1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.generic_blocks, 1, 3), new ItemStack(FRItems.limestone_dust, 4))); - - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRItems.clinker_mix, 1), new ItemStack(FRItems.cement_dust, 1))); - - for (int i = 0; i < 16; i++) { - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_standard, 1, i), new ItemStack(FRBlocks.road_block_standard.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_concrete_1, 1, i), new ItemStack(FRBlocks.road_block_concrete_1.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_concrete_2, 1, i), new ItemStack(FRBlocks.road_block_concrete_2.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_light, 1, i), new ItemStack(FRBlocks.road_block_light.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_fine, 1, i), new ItemStack(FRBlocks.road_block_fine.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_dark, 1, i), new ItemStack(FRBlocks.road_block_dark.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_pale, 1, i), new ItemStack(FRBlocks.road_block_pale.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_red, 1, i), new ItemStack(FRBlocks.road_block_red.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_blue, 1, i), new ItemStack(FRBlocks.road_block_blue.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_white, 1, i), new ItemStack(FRBlocks.road_block_white.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_yellow, 1, i), new ItemStack(FRBlocks.road_block_yellow.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_green, 1, i), new ItemStack(FRBlocks.road_block_green.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_muddy, 1, i), new ItemStack(FRBlocks.road_block_muddy.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_muddy_dried, 1, i), new ItemStack(FRBlocks.road_block_muddy_dried.getFragmentItem(), i+1))); - - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_stone, 1, i), new ItemStack(FRBlocks.road_block_stone.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_grass, 1, i), new ItemStack(FRBlocks.road_block_grass.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_dirt, 1, i), new ItemStack(FRBlocks.road_block_dirt.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_gravel, 1, i), new ItemStack(FRBlocks.road_block_gravel.getFragmentItem(), i+1))); - crusherRecipes.add(new CrusherRecipes(new ItemStack(FRBlocks.road_block_sand, 1, i), new ItemStack(FRBlocks.road_block_sand.getFragmentItem(), i+1))); - } - } - - public static void registerFabricatorRecipes() { - ItemStack empty = ItemStack.EMPTY; - ItemStack iron_ingot = new ItemStack(Items.IRON_INGOT); - ItemStack iron_ingot_2 = new ItemStack(Items.IRON_INGOT, 2); - ItemStack concrete_1 = new ItemStack(FRBlocks.road_block_concrete_1, 1, 15); - ItemStack concrete_2 = new ItemStack(FRBlocks.road_block_concrete_2, 1, 15); - ItemStack iron_bars = new ItemStack(Blocks.IRON_BARS); - ItemStack black_dye = new ItemStack(Items.DYE, 1, 0); - ItemStack yellow_dye = new ItemStack(Items.DYE, 1, 11); - ItemStack piston = new ItemStack(Blocks.PISTON, 1, 0); - ItemStack redstone = new ItemStack(Items.REDSTONE, 1, 0); - - int i = 0; - - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot, empty, empty, empty, empty, empty, new ItemStack(FRBlocks.post_small_vertical, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot, empty, empty, empty, empty, empty, new ItemStack(FRBlocks.post_small_vertical_2, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot, empty, empty, empty, empty, empty, new ItemStack(FRBlocks.post_small_horizontal, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot_2, empty, empty, empty, empty, empty, new ItemStack(FRBlocks.post_medium_vertical, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot_2, empty, empty, empty, empty, empty, new ItemStack(FRBlocks.post_medium_vertical_2, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot_2, empty, empty, empty, empty, empty, new ItemStack(FRBlocks.post_medium_horizontal, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.IRON_INGOT, 3), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.post_large_vertical, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.IRON_INGOT, 3), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.post_large_vertical_2, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.IRON_INGOT, 3), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.post_large_horizontal, 2, 0))); - - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot_2, new ItemStack(Items.GLOWSTONE_DUST, 1), new ItemStack(Blocks.GLASS_PANE, 1), empty, empty, empty, new ItemStack(FRBlocks.street_light_1, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot_2, new ItemStack(Items.GLOWSTONE_DUST, 1), new ItemStack(Blocks.GLASS_PANE, 1), empty, empty, empty, new ItemStack(FRBlocks.street_light_2, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot_2, new ItemStack(Items.GLOWSTONE_DUST, 1), new ItemStack(Blocks.GLASS_PANE, 1), empty, empty, empty, new ItemStack(FRBlocks.street_light_3, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot_2, new ItemStack(Items.GLOWSTONE_DUST, 1), new ItemStack(Blocks.GLASS_PANE, 1), empty, empty, empty, new ItemStack(FRBlocks.street_light_4, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot_2, new ItemStack(Items.GLOWSTONE_DUST, 1), new ItemStack(Blocks.GLASS_PANE, 1), empty, empty, empty, new ItemStack(FRBlocks.street_light_5, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot_2, new ItemStack(Items.GLOWSTONE_DUST, 1), new ItemStack(Blocks.GLASS_PANE, 1), empty, empty, empty, new ItemStack(FRBlocks.street_light_6, 2, 0))); - - //Barriers - fabricatorRecipes.add(new FabricatorRecipes(i++, black_dye, iron_ingot, yellow_dye, empty, iron_ingot, empty, new ItemStack(FRBlocks.barrier_end, 4, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot, iron_ingot, iron_ingot, empty, empty, empty, new ItemStack(FRBlocks.barrier_standard_mid, 4, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot, iron_ingot, iron_ingot, iron_ingot, iron_ingot, iron_ingot, new ItemStack(FRBlocks.barrier_tall_mid, 4, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, concrete_1, empty, empty, concrete_1, empty, new ItemStack(FRBlocks.barrier_concrete_1_mid, 4, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, concrete_2, empty, empty, concrete_2, empty, new ItemStack(FRBlocks.barrier_concrete_2_mid, 4, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_bars, empty, empty, new ItemStack(Blocks.IRON_BARS), empty, new ItemStack(FRBlocks.barrier_bars_mid, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_bars, empty, empty, new ItemStack(Blocks.IRON_BARS), empty, new ItemStack(FRBlocks.barrier_bars_mid_2, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_bars, empty, empty, new ItemStack(Blocks.IRON_BARS), empty, new ItemStack(FRBlocks.barrier_bars_mid_3, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, concrete_1, concrete_1, concrete_1, empty, empty, empty, new ItemStack(FRBlocks.barrier_wall_mid_concrete_1, 6, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, concrete_2, concrete_2, concrete_2, empty, empty, empty, new ItemStack(FRBlocks.barrier_wall_mid_concrete_2, 6, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_bars, concrete_1, iron_bars, empty, empty, empty, new ItemStack(FRBlocks.barrier_bars_mid_concrete_1, 6, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_bars, concrete_2, iron_bars, empty, empty, empty, new ItemStack(FRBlocks.barrier_bars_mid_concrete_2, 6, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_bars, empty, concrete_1, concrete_1, concrete_1, new ItemStack(FRBlocks.barrier_wall_pole_mid_concrete_1, 8, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_bars, empty, concrete_2, concrete_2, concrete_2, new ItemStack(FRBlocks.barrier_wall_pole_mid_concrete_2, 8, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, empty, empty, iron_ingot, iron_ingot, iron_ingot, new ItemStack(FRBlocks.barrier_low_mid, 6, 0))); - //Edge barriers - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_standard_mid, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_standard_edge, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_tall_mid, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_tall_edge, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_concrete_1_mid, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_concrete_edge_1, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_concrete_2_mid, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_concrete_edge_2, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_bars_mid, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_bars_edge, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_bars_mid_2, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_bars_edge_2, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_bars_mid_3, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_bars_edge_3, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_wall_mid_concrete_1, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_wall_edge_concrete_1, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_wall_mid_concrete_2, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_wall_edge_concrete_2, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_bars_mid_concrete_1, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_bars_edge_concrete_1, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_bars_mid_concrete_2, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_bars_edge_concrete_2, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_wall_pole_mid_concrete_1, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_wall_pole_edge_concrete_1, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_wall_pole_mid_concrete_2, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_wall_pole_edge_concrete_2, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_low_mid, 1, 0), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_low_edge, 1, 0))); - //Double - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_standard_edge, 1, 0), new ItemStack(FRBlocks.barrier_standard_edge, 1, 0), empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_standard_edge_double, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_tall_edge, 1, 0), new ItemStack(FRBlocks.barrier_tall_edge, 1, 0), empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_tall_edge_double, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_bars_edge, 1, 0), new ItemStack(FRBlocks.barrier_bars_edge, 1, 0), empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_bars_edge_double, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_bars_edge_2, 1, 0), new ItemStack(FRBlocks.barrier_bars_edge_3, 1, 0), empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_bars_edge_double_2, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_bars_edge_2, 1, 0), new ItemStack(FRBlocks.barrier_bars_edge_3, 1, 0), empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_bars_edge_double_3, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_wall_edge_concrete_1, 1, 0), new ItemStack(FRBlocks.barrier_wall_edge_concrete_1, 1, 0), empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_wall_edge_concrete_1_double, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_wall_edge_concrete_2, 1, 0), new ItemStack(FRBlocks.barrier_wall_edge_concrete_2, 1, 0), empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_wall_edge_concrete_2_double, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_bars_edge_concrete_1, 1, 0), new ItemStack(FRBlocks.barrier_bars_edge_concrete_1, 1, 0), empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_bars_edge_concrete_1_double, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_bars_edge_concrete_2, 1, 0), new ItemStack(FRBlocks.barrier_bars_edge_concrete_2, 1, 0), empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_bars_edge_concrete_2_double, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_wall_pole_edge_concrete_1, 1, 0), new ItemStack(FRBlocks.barrier_wall_pole_edge_concrete_1, 1, 0), empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_wall_pole_edge_concrete_1_double, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.barrier_wall_pole_edge_concrete_2, 1, 0), new ItemStack(FRBlocks.barrier_wall_pole_edge_concrete_2, 1, 0), empty, empty, empty, empty, new ItemStack(FRBlocks.barrier_wall_pole_edge_concrete_2_double, 1, 0))); - - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 0), new ItemStack(Blocks.REDSTONE_LAMP), new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 0), new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 11), new ItemStack(Blocks.STONE_PRESSURE_PLATE), new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 4), new ItemStack(FRBlocks.bollard_1, 4, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 0), new ItemStack(Blocks.REDSTONE_LAMP), new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 0), new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 11), new ItemStack(Blocks.STONE_PRESSURE_PLATE), new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 4), new ItemStack(FRBlocks.bollard_1, 4, 2))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 0), new ItemStack(Blocks.REDSTONE_LAMP), new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 0), new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 11), new ItemStack(Blocks.STONE_PRESSURE_PLATE), new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 4), new ItemStack(FRBlocks.bollard_1, 8, 4))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 0), new ItemStack(Blocks.REDSTONE_LAMP), new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 0), new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 11), new ItemStack(Blocks.STONE_PRESSURE_PLATE), new ItemStack(Blocks.STAINED_GLASS_PANE, 1, 4), new ItemStack(FRBlocks.bollard_1, 8, 6))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, concrete_1, empty, empty, concrete_1, empty, new ItemStack(FRBlocks.bollard_2, 8, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, concrete_2, empty, empty, concrete_2, empty, new ItemStack(FRBlocks.bollard_2, 8, 1))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_ingot_2, empty, empty, iron_ingot_2, empty, new ItemStack(FRBlocks.bollard_2, 4, 2))); - fabricatorRecipes.add(new FabricatorRecipes(i++, black_dye, iron_ingot_2, yellow_dye, black_dye, iron_ingot_2, yellow_dye, new ItemStack(FRBlocks.bollard_2, 4, 3))); - fabricatorRecipes.add(new FabricatorRecipes(i++, black_dye, iron_ingot_2, new ItemStack(Items.DYE, 1, 15), empty, new ItemStack(Items.IRON_INGOT, 2), empty, new ItemStack(FRBlocks.bollard_2, 4, 4))); - fabricatorRecipes.add(new FabricatorRecipes(i++, yellow_dye, iron_ingot_2, yellow_dye, empty, iron_ingot_2, empty, new ItemStack(FRBlocks.bollard_2, 4, 5))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_ingot, empty, empty, iron_ingot, empty, new ItemStack(FRBlocks.bollard_2, 4, 6))); - fabricatorRecipes.add(new FabricatorRecipes(i++, black_dye, iron_ingot, yellow_dye, black_dye, iron_ingot, yellow_dye, new ItemStack(FRBlocks.bollard_2, 4, 7))); - fabricatorRecipes.add(new FabricatorRecipes(i++, black_dye, iron_ingot, new ItemStack(Items.DYE, 1, 15), empty, iron_ingot, empty, new ItemStack(FRBlocks.bollard_2, 4, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, yellow_dye, iron_ingot, yellow_dye, empty, iron_ingot, empty, new ItemStack(FRBlocks.bollard_2, 4, 9))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.IRON_NUGGET), iron_ingot, new ItemStack(Items.IRON_NUGGET), black_dye, iron_ingot, black_dye, new ItemStack(FRBlocks.bollard_2, 4, 10))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.GOLD_NUGGET), new ItemStack(FRBlocks.bollard_2, 4, 10), new ItemStack(Items.GOLD_NUGGET), empty, empty, empty, new ItemStack(FRBlocks.bollard_2, 4, 11))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot_2, new ItemStack(Items.GLOWSTONE_DUST), empty, new ItemStack(Items.IRON_INGOT, 2), empty, new ItemStack(FRBlocks.bollard_2, 4, 12))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot_2, new ItemStack(Items.GLOWSTONE_DUST), black_dye, new ItemStack(Items.IRON_INGOT, 2), black_dye, new ItemStack(FRBlocks.bollard_2, 4, 13))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 14), iron_ingot, new ItemStack(Items.DYE, 1, 14), empty, iron_ingot, empty, new ItemStack(FRBlocks.bollard_2, 4, 14))); - fabricatorRecipes.add(new FabricatorRecipes(i++, yellow_dye, iron_ingot, yellow_dye, empty, iron_ingot, empty, new ItemStack(FRBlocks.bollard_2, 4, 15))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_ingot_2, empty, empty, piston, empty, new ItemStack(FRBlocks.bollard_3, 2, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_ingot_2, empty, empty, piston, empty, new ItemStack(FRBlocks.bollard_3, 2, 2))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, new ItemStack(Items.IRON_INGOT, 3), empty, empty, piston, empty, new ItemStack(FRBlocks.bollard_3, 2, 4))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, new ItemStack(Items.IRON_INGOT, 3), empty, empty, piston, empty, new ItemStack(FRBlocks.bollard_3, 2, 6))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_ingot_2, empty, empty, piston, empty, new ItemStack(FRBlocks.bollard_3, 2, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_ingot_2, empty, empty, piston, empty, new ItemStack(FRBlocks.bollard_3, 2, 10))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_ingot, empty, empty, piston, empty, new ItemStack(FRBlocks.bollard_3, 2, 12))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_ingot, empty, empty, piston, empty, new ItemStack(FRBlocks.bollard_3, 2, 14))); - fabricatorRecipes.add(new FabricatorRecipes(i++, yellow_dye, iron_ingot, yellow_dye, empty, redstone, empty, new ItemStack(FRBlocks.bollard_folding_yellow, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, yellow_dye, iron_ingot_2, yellow_dye, empty, redstone, empty, new ItemStack(FRBlocks.bollard_folding_yellow, 1, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_ingot, empty, empty, redstone, empty, new ItemStack(FRBlocks.bollard_folding_smooth_metal, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, iron_ingot_2, empty, empty, redstone, empty, new ItemStack(FRBlocks.bollard_folding_smooth_metal, 1, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, black_dye, iron_ingot, black_dye, empty, redstone, empty, new ItemStack(FRBlocks.bollard_folding_black, 1, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, black_dye, iron_ingot_2, black_dye, empty, redstone, empty, new ItemStack(FRBlocks.bollard_folding_black, 1, 8))); - - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 1, 0), black_dye, new ItemStack(Blocks.STONE, 1, 0), empty, empty, empty, new ItemStack(FRBlocks.speed_bump, 8, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 1, 0), yellow_dye, new ItemStack(Blocks.STONE, 1, 0), empty, empty, empty, new ItemStack(FRBlocks.speed_bump, 8, 2))); - fabricatorRecipes.add(new FabricatorRecipes(i++, concrete_1, empty, concrete_1, empty, empty, empty, new ItemStack(FRBlocks.speed_bump, 8, 4))); - fabricatorRecipes.add(new FabricatorRecipes(i++, concrete_2, empty, concrete_2, empty, empty, empty, new ItemStack(FRBlocks.speed_bump, 8, 6))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.road_block_standard, 1, 15), empty, new ItemStack(FRBlocks.road_block_standard, 1, 15), empty, empty, empty, new ItemStack(FRBlocks.speed_bump, 8, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.road_block_white, 1, 15), empty, new ItemStack(FRBlocks.road_block_white, 1, 15), empty, empty, empty, new ItemStack(FRBlocks.speed_bump, 8, 10))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.road_block_yellow, 1, 15), empty, new ItemStack(FRBlocks.road_block_yellow, 1, 15), empty, empty, empty, new ItemStack(FRBlocks.speed_bump, 8, 12))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.road_block_red, 1, 15), empty, new ItemStack(FRBlocks.road_block_red, 1, 15), empty, empty, empty, new ItemStack(FRBlocks.speed_bump, 8, 14))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, empty, empty, empty, concrete_1, empty, new ItemStack(FRBlocks.wheel_stop, 4, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, empty, empty, empty, concrete_2, empty, new ItemStack(FRBlocks.wheel_stop, 4, 4))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, yellow_dye, empty, empty, new ItemStack(Blocks.STONE, 1, 0), empty, new ItemStack(FRBlocks.wheel_stop, 4, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, empty, black_dye, empty, empty, new ItemStack(Blocks.STONE, 1, 0), empty, new ItemStack(FRBlocks.wheel_stop, 4, 12))); - - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 15), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 15), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_white, 2))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 11), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 11), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_yellow, 2))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 1), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 1), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_red, 2))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 2), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 2), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_green, 2))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 4), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 4), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_blue, 2))); - - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 1), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 2), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_red_green, 2))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 15), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 1), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_white_red, 2))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 15), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 11), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_white_yellow, 2))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 15), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 2), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_white_green, 2))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 11), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 1), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_yellow_red, 2))); - - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 1), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 2), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_red_green_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.cats_eye_red_green), empty, new ItemStack(FRBlocks.cats_eye_red_green), empty, empty, empty, new ItemStack(FRBlocks.cats_eye_red_green_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 15), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 1), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_white_red_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.cats_eye_white_red), empty, new ItemStack(FRBlocks.cats_eye_white_red), empty, empty, empty, new ItemStack(FRBlocks.cats_eye_white_red_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 15), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 11), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_white_yellow_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.cats_eye_white_yellow), empty, new ItemStack(FRBlocks.cats_eye_white_yellow), empty, empty, empty, new ItemStack(FRBlocks.cats_eye_white_yellow_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 15), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 2), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_white_green_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.cats_eye_white_green), empty, new ItemStack(FRBlocks.cats_eye_white_green), empty, empty, empty, new ItemStack(FRBlocks.cats_eye_white_green_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 11), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 1), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_yellow_red_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.cats_eye_yellow_red), empty, new ItemStack(FRBlocks.cats_eye_yellow_red), empty, empty, empty, new ItemStack(FRBlocks.cats_eye_yellow_red_double))); - - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 15), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 15), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_white_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.cats_eye_white), empty, new ItemStack(FRBlocks.cats_eye_white), empty, empty, empty, new ItemStack(FRBlocks.cats_eye_white_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 11), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 11), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_yellow_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.cats_eye_yellow), empty, new ItemStack(FRBlocks.cats_eye_yellow), empty, empty, empty, new ItemStack(FRBlocks.cats_eye_yellow_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 1), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 1), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_red_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.cats_eye_red), empty, new ItemStack(FRBlocks.cats_eye_red), empty, empty, empty, new ItemStack(FRBlocks.cats_eye_red_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 2), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 2), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_green_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.cats_eye_green), empty, new ItemStack(FRBlocks.cats_eye_green), empty, empty, empty, new ItemStack(FRBlocks.cats_eye_green_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Items.DYE, 1, 4), new ItemStack(Blocks.GLASS_PANE), new ItemStack(Items.DYE, 1, 4), iron_ingot, new ItemStack(Items.GLOWSTONE_DUST), iron_ingot, new ItemStack(FRBlocks.cats_eye_blue_double))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(FRBlocks.cats_eye_blue), empty, new ItemStack(FRBlocks.cats_eye_blue), empty, empty, empty, new ItemStack(FRBlocks.cats_eye_blue_double))); - - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE), empty, new ItemStack(Blocks.STONE), new ItemStack(Blocks.STONE), empty, new ItemStack(Blocks.STONE), new ItemStack(FRBlocks.kerb_standard, 8, 0))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE), new ItemStack(Items.DYE, 1, 15), new ItemStack(Blocks.STONE), new ItemStack(Blocks.STONE), new ItemStack(Items.DYE, 1, 15), new ItemStack(Blocks.STONE), new ItemStack(FRBlocks.kerb_standard, 8, 4))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE), new ItemStack(Items.DYE, 1, 11), new ItemStack(Blocks.STONE), new ItemStack(Blocks.STONE), new ItemStack(Items.DYE, 1, 11), new ItemStack(Blocks.STONE), new ItemStack(FRBlocks.kerb_standard, 8, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE), new ItemStack(Items.DYE, 1, 1), new ItemStack(Blocks.STONE), new ItemStack(Blocks.STONE), new ItemStack(Items.DYE, 1, 1), new ItemStack(Blocks.STONE), new ItemStack(FRBlocks.kerb_standard, 8, 12))); - - fabricatorRecipes.add(new FabricatorRecipes(i++, yellow_dye, yellow_dye, yellow_dye, new ItemStack(Blocks.STONE_PRESSURE_PLATE), new ItemStack(Blocks.STONE_PRESSURE_PLATE), new ItemStack(Blocks.STONE_PRESSURE_PLATE), new ItemStack(FRBlocks.tactile_crossing_bumps, 16))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot, new ItemStack(FRItems.tool_handle), iron_ingot, empty, empty, empty, new ItemStack(FRBlocks.manhole_cover_round, 4))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot, new ItemStack(FRItems.tool_handle), iron_ingot, empty, empty, empty, new ItemStack(FRBlocks.manhole_cover_square, 4))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot, new ItemStack(FRItems.tool_handle), iron_ingot, empty, empty, empty, new ItemStack(FRBlocks.drain_cover_1, 4))); - fabricatorRecipes.add(new FabricatorRecipes(i++, iron_ingot, new ItemStack(FRItems.tool_handle), iron_ingot, empty, empty, empty, new ItemStack(FRBlocks.drain_cover_2, 4))); - - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_1_1, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_1_2, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_1_4, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_2_4, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_1_8, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_2_8, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_3_8, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_4_8, 8))); - - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_1_1_mirror, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_1_2_mirror, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_1_4_mirror, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_2_4_mirror, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_1_8_mirror, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_2_8_mirror, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_3_8_mirror, 8))); - fabricatorRecipes.add(new FabricatorRecipes(i++, new ItemStack(Blocks.STONE, 8), empty, empty, empty, empty, empty, new ItemStack(FRBlocks.road_block_diagonal_4_8_mirror, 8))); - - //fabricatorRecipes.add(new FabricatorRecipes(i++, empty, empty, empty, empty, empty, empty, empty)); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/RoadFactoryRecipes.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/RoadFactoryRecipes.java deleted file mode 100644 index 7e14abac..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/RoadFactoryRecipes.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.recipes; - -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryContainer; - -import net.minecraft.inventory.InventoryCrafting; -import net.minecraft.item.ItemStack; -import net.minecraft.item.crafting.Ingredient; -import net.minecraft.world.World; -import net.minecraftforge.common.crafting.CraftingHelper; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.items.ItemStackHandler; - -public class RoadFactoryRecipes { - - private final Ingredient ingredient; - private final Ingredient ingredientModifier; - private final FluidStack fluidInput; - private final ItemStack input; - private final ItemStack modifier; - private final ItemStack result; - - public RoadFactoryRecipes(FluidStack fluidInput, ItemStack i, ItemStack m, ItemStack r) { - this.ingredient = CraftingHelper.getIngredient(i); - this.ingredientModifier = CraftingHelper.getIngredient(m); - this.fluidInput = fluidInput; - this.input = i; - this.modifier = m; - this.result = r; - } - - public boolean matches(InventoryCrafting inv, World worldIn) { - return this.ingredient.test(inv.getStackInSlot(0)); - } - - public boolean test(Ingredient ing, ItemStack input) { - if (input == ItemStack.EMPTY) { - return ing.test(input); - } - return ing.test(input) && this.input.getCount() <= input.getCount(); - } - - public ItemStack getCraftingResult(ItemStackHandler inventory) { - ItemStack in1 = inventory.getStackInSlot(RoadFactoryContainer.INPUT_1); - ItemStack in2 = inventory.getStackInSlot(RoadFactoryContainer.INPUT_2); - ItemStack in3 = inventory.getStackInSlot(RoadFactoryContainer.INPUT_3); - ItemStack in4 = inventory.getStackInSlot(RoadFactoryContainer.INPUT_4); - - int i1 = test(ingredient, in1) ? 1 : 0; - int i2 = test(ingredient, in2) ? 1 : 0; - int i3 = test(ingredient, in3) ? 1 : 0; - int i4 = test(ingredient, in4) ? 1 : 0; - - int sum = i1+i2+i3+i4; - - //Support for old machines which don't have the modifier slot. - ItemStack modifier = inventory.getSlots() >= 12 ? inventory.getStackInSlot(RoadFactoryContainer.MODIFIER) : ItemStack.EMPTY; - - if ((sum > 0) && test(ingredientModifier, modifier)) { - ItemStack out = this.result.copy(); - out.setCount(8 * (sum)); - return out; - } - return ItemStack.EMPTY; - } - - public FluidStack getFluidInputStack() { - return fluidInput; - } - - public ItemStack getModifier() { - return modifier; - } - - public ItemStack getInputStack() { - return input; - } - - public ItemStack getOutputStack() { - return result; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/TarDistillerRecipes.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/TarDistillerRecipes.java deleted file mode 100644 index 38bb32f8..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/TarDistillerRecipes.java +++ /dev/null @@ -1,130 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.recipes; - -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerContainer; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerEntity; - -import net.minecraft.inventory.InventoryCrafting; -import net.minecraft.item.ItemStack; -import net.minecraft.item.crafting.Ingredient; -import net.minecraft.world.World; -import net.minecraftforge.common.crafting.CraftingHelper; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidTank; -import net.minecraftforge.items.ItemStackHandler; - -public class TarDistillerRecipes { - - private final Ingredient ingredient; - private final FluidStack fluidInput; - private final FluidStack fluidOutput1; - private final FluidStack fluidOutput2; - private final ItemStack input; - private final ItemStack output1; - private final ItemStack output2; - - public TarDistillerRecipes(FluidStack fluidInput, ItemStack input, FluidStack fluidOutput1, FluidStack fluidOutput2, ItemStack output1, ItemStack output2) { - this.ingredient = CraftingHelper.getIngredient(input); - this.fluidInput = fluidInput; - this.input = input; - this.fluidOutput1 = fluidOutput1; - this.fluidOutput2 = fluidOutput2; - this.output1 = output1; - this.output2 = output2; - } - - public boolean matches(InventoryCrafting inv, World worldIn) { - return this.ingredient.test(inv.getStackInSlot(0)); - } - - public boolean test(Ingredient ing, ItemStack input) { - if (input == ItemStack.EMPTY) { - return ing.test(input); - } - return ing.test(input) && this.input.getCount() <= input.getCount(); - } - - public boolean testFluid(FluidStack fluidIn) { - if (fluidInput == null) { - return true; - } - - //If we get here, we SHOULD have a fluid (coz input wasn't null). So if the main tank is empty/null, then it fails. - if (fluidIn == null) { - return false; - } - - if (fluidIn.getFluid() == fluidInput.getFluid() && fluidIn.amount >= fluidInput.amount) { - return true; - } - - return false; - } - - public boolean testFluidOutput(FluidStack tank, FluidStack recipeOut) { - if (tank == null || recipeOut == null) { - return true; - } - if (tank.getFluid() == recipeOut.getFluid() && tank.amount + recipeOut.amount <= TarDistillerEntity.TANK_CAP) { - return true; - } - return false; - } - - public boolean canFullyCraft(ItemStackHandler inventory, FluidTank fluidIn, FluidTank fluidOut1, FluidTank fluidOut2) { - ItemStack in = inventory.getStackInSlot(TarDistillerContainer.INPUT); - if (test(ingredient, in)) { - if (testFluid(fluidIn.getFluid())) { - //Our inputs are all good. What can we make? - boolean out1 = output1.getCount() > 0 ? inventory.insertItem(TarDistillerContainer.OUTPUT_1, output1, true).getCount() == 0 : true; - boolean out2 = output2.getCount() > 0 ? inventory.insertItem(TarDistillerContainer.OUTPUT_2, output2, true).getCount() == 0 : true; - - boolean fOut1 = testFluidOutput(fluidOut1.getFluid(), fluidOutput1); - boolean fOut2 = testFluidOutput(fluidOut2.getFluid(), fluidOutput2); - - if (out1 && out2 && fOut1 && fOut2) { - return true; - } - } - } - - return false; - } - - public void processCrafting(ItemStackHandler inventory, FluidTank fluidIn, FluidTank fluidOut1, FluidTank fluidOut2) { - if (canFullyCraft(inventory, fluidIn, fluidOut1, fluidOut2)) { - if (input != ItemStack.EMPTY) { inventory.extractItem(TarDistillerContainer.INPUT, input.getCount(), false); } - if (fluidInput != null) { fluidIn.drain(fluidInput.amount, true); } - - if (output1 != ItemStack.EMPTY) { inventory.insertItem(TarDistillerContainer.OUTPUT_1, output1.copy(), false); } - if (output2 != ItemStack.EMPTY) { inventory.insertItem(TarDistillerContainer.OUTPUT_2, output2.copy(), false); } - - if (fluidOutput1 != null) { fluidOut1.fill(fluidOutput1, true); } - if (fluidOutput2 != null) { fluidOut2.fill(fluidOutput2, true); } - } - } - - public FluidStack getFluidInputStack() { - return fluidInput; - } - - public ItemStack getInputStack() { - return input; - } - - public ItemStack getOutput1Stack() { - return output1; - } - - public ItemStack getOutput2Stack() { - return output2; - } - - public FluidStack getFluidOutput1Stack() { - return fluidOutput1; - } - - public FluidStack getFluidOutput2Stack() { - return fluidOutput2; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/ThermalExpansionRecipes.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/ThermalExpansionRecipes.java deleted file mode 100644 index 77c8e821..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/ThermalExpansionRecipes.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.recipes; - -import com.silvaniastudios.roads.RoadsConfig; - -import cofh.api.util.ThermalExpansionHelper; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.common.Loader; - -public class ThermalExpansionRecipes { - - public static void registerThermalExpansionRecipes() { - if (Loader.isModLoaded("thermalexpansion")) { - for (int i = 0; i < RecipeRegistry.crusherRecipes.size(); i++) { - CrusherRecipes cr = RecipeRegistry.crusherRecipes.get(i); - ThermalExpansionHelper.addPulverizerRecipe(RoadsConfig.machine.electricCrusherEnergyConsumption, cr.getInputStack(), cr.getOutputStack()); - } - - for (int i = 0; i < RecipeRegistry.compactorRecipes.size(); i++) { - CompactorRecipes cr = RecipeRegistry.compactorRecipes.get(i); - ItemStack input = cr.getInputStack(); - ItemStack output = cr.getOutputStack(); - - input.setCount(16); - output.setItemDamage(15); - - ThermalExpansionHelper.addCompactorRecipe(RoadsConfig.machine.electricCompactorEnergyConsumption, input, output); - } - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/ThermalFoundationRecipes.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/ThermalFoundationRecipes.java deleted file mode 100644 index efd46a09..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/recipes/ThermalFoundationRecipes.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.recipes; - -import com.silvaniastudios.roads.fluids.FRFluids; - -import cofh.thermalfoundation.init.TFFluids; -import cofh.thermalfoundation.init.TFItems; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fluids.FluidStack; - -public class ThermalFoundationRecipes { - - public static void tfRecipes() { - RecipeRegistry.tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 2000), new ItemStack(TFItems.itemMaterial, 1, 833), new FluidStack(FRFluids.tar, 2000), null, ItemStack.EMPTY, ItemStack.EMPTY)); - RecipeRegistry.tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(FluidRegistry.WATER, 3000), new ItemStack(TFItems.itemMaterial, 1, 892), new FluidStack(FRFluids.tar, 3000), null, ItemStack.EMPTY, ItemStack.EMPTY)); - - RecipeRegistry.tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(TFFluids.fluidCrudeOil, 250), ItemStack.EMPTY, new FluidStack(FRFluids.tar, 250), null, ItemStack.EMPTY, ItemStack.EMPTY)); - RecipeRegistry.tarDistillerRecipes.add(new TarDistillerRecipes(new FluidStack(TFFluids.fluidBiocrude, 250), ItemStack.EMPTY, new FluidStack(FRFluids.tar, 250), null, ItemStack.EMPTY, ItemStack.EMPTY)); - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryBlock.java deleted file mode 100644 index f51b03bd..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryBlock.java +++ /dev/null @@ -1,203 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.roadfactory; - -import java.util.List; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.tileentities.RoadTEBlock; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenEntity; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyBool; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidUtil; -import net.minecraftforge.fluids.capability.CapabilityFluidHandler; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; -import net.minecraftforge.items.CapabilityItemHandler; - -public class RoadFactoryBlock extends RoadTEBlock { - - public static final PropertyBool FLUID_LEFT = PropertyBool.create("fluid_left"); - public static final PropertyBool FLUID_UP = PropertyBool.create("fluid_up"); - - public RoadFactoryBlock(String name, boolean electric) { - super(name, electric, 3); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(ROTATION, RoadTEBlock.EnumRotation.north) - .withProperty(FLUID_LEFT, false) - .withProperty(FLUID_UP, false) - .withProperty(FURNACE_ACTIVE, false)); - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("roads.gui.road_factory.tooltip_1")); - tooltip.add(I18n.format("roads.gui.road_factory.tooltip_2")); - } - - @Override - public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - ItemStack held = player.getHeldItem(EnumHand.MAIN_HAND); - - if (world.getTileEntity(pos) != null && world.getTileEntity(pos) instanceof RoadFactoryEntity) { - RoadFactoryEntity te = (RoadFactoryEntity) world.getTileEntity(pos); - if (held.getItem() == Items.BUCKET) { - - if (te.tarFluid.getFluidAmount() >= 1000) { - if (!player.isCreative()) { - if (held.getCount() > 1) { - held.setCount(held.getCount() - 1); - } else { - player.inventory.setInventorySlotContents(player.inventory.currentItem, ItemStack.EMPTY); - } - } - player.addItemStackToInventory(FluidUtil.getFilledBucket(te.tarFluid.getFluid())); - te.tarFluid.drain(1000, true); - te.sendUpdates(); - return true; - } - } - - if (held.getItem().getUnlocalizedName().compareTo("item.forge.bucketFilled") == 0) { - FluidStack fluidStack = FluidUtil.getFluidContained(held); - if (te.tarFluid.getFluidAmount() + 1000 <= PaintOvenEntity.FILLER_TANK_CAP ) { - if ((te.tarFluid.getFluidAmount() > 0 && te.tarFluid.getFluid().getFluid() == fluidStack.getFluid()) || te.tarFluid.getFluidAmount() == 0) { - if (!player.isCreative()) { - if (held.getCount() > 1) { - held.setCount(held.getCount() - 1); - } else { - player.inventory.setInventorySlotContents(player.inventory.currentItem, ItemStack.EMPTY); - } - player.addItemStackToInventory(new ItemStack(Items.BUCKET)); - } - if (te.tarFluid.getFluidAmount() > 0) { - te.tarFluid.fill(fluidStack, true); - } else { - te.tarFluid.setFluid(fluidStack); - } - } - te.sendUpdates(); - - return true; - } - } - } - - return super.onBlockActivated(world, pos, state, player, hand, facing, hitX, hitY, hitZ); - } - - @Override - public TileEntity createTileEntity(World worldIn, IBlockState state) { - if (electric) { - return new RoadFactoryElectricEntity(); - } - return new RoadFactoryEntity(); - } - - public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - EnumFacing left = EnumFacing.WEST; - EnumFacing right = EnumFacing.EAST; - - if (getMetaFromState(state) == 1) { left = EnumFacing.NORTH; right = EnumFacing.SOUTH; } - if (getMetaFromState(state) == 2) { left = EnumFacing.EAST; right = EnumFacing.WEST; } - if (getMetaFromState(state) == 3) { left = EnumFacing.SOUTH; right = EnumFacing.NORTH; } - - boolean fluid_left = fluidLeft(world, pos, left, right); - boolean fluid_up = fluidTop(world, pos); - - - return state.withProperty(FLUID_LEFT, fluid_left).withProperty(FLUID_UP, fluid_up).withProperty(FURNACE_ACTIVE, isFurnaceEnabled(state, world, pos)).withProperty(BASE_PLATE, hasBasePlate(world, pos)); - } - - private boolean fluidLeft(IBlockAccess world, BlockPos pos, EnumFacing left, EnumFacing right) { - if (world.getTileEntity(pos.offset(left)) != null) { - if (world.getTileEntity(pos.offset(left)).hasCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, right)) { - return true; - } - } - return false; - } - - private boolean fluidTop(IBlockAccess world, BlockPos pos) { - if (world.getTileEntity(pos.offset(EnumFacing.UP)) != null) { - if (world.getTileEntity(pos.offset(EnumFacing.UP)).hasCapability(CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY, EnumFacing.DOWN) || - world.getTileEntity(pos.offset(EnumFacing.UP)).hasCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, EnumFacing.DOWN)) { - return true; - } - } - return false; - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - EnumFacing left = EnumFacing.WEST; - EnumFacing right = EnumFacing.EAST; - int meta = getMetaFromState(state); - - if (meta == 1) { - left = EnumFacing.NORTH; - right = EnumFacing.SOUTH; - } - - if (meta == 2) { - left = EnumFacing.EAST; - right = EnumFacing.WEST; - } - - if (meta == 3) { - left = EnumFacing.SOUTH; - right = EnumFacing.NORTH; - } - - boolean fluid_left = fluidLeft(world, pos, left, right); - boolean fluid_top = fluidTop(world, pos); - - double top = fluid_top ? 1.0D : 0.84375D; - - if (meta == 0) { - double l = fluid_left ? 0.0D : 0.0625D; - return new AxisAlignedBB(l, 0.0D, 0.0625D, 0.9375D, top, 0.9375D); - } - - if (meta == 1) { - double l = fluid_left ? 0.0D : 0.0625D; - return new AxisAlignedBB(0.0625D, 0.0D, l, 0.9375D, top, 0.9375D); - } - - if (meta == 2) { - double r = fluid_left ? 1.0D : 0.9375D; - return new AxisAlignedBB(0.0625D, 0.0D, 0.0625D, r, top, 0.9375D); - } - - if (meta == 3) { - double r = fluid_left ? 1.0D : 0.9375D; - return new AxisAlignedBB(0.0625D, 0.0D, 0.0625D, 0.9375D, top, r); - } - - return new AxisAlignedBB(0.0625D, 0.0D, 0.0625D, 0.9375D, top, 0.9375D); - } - - @Override - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return getBoundingBox(state, world, pos); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {FLUID_LEFT, FLUID_UP, ROTATION, FURNACE_ACTIVE, BASE_PLATE}); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryContainer.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryContainer.java deleted file mode 100644 index 3e61ae86..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryContainer.java +++ /dev/null @@ -1,164 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.roadfactory; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.SlotFluid; -import com.silvaniastudios.roads.blocks.tileentities.SlotFuel; -import com.silvaniastudios.roads.blocks.tileentities.SlotOutput; -import com.silvaniastudios.roads.network.ClientGuiUpdatePacket; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.inventory.IContainerListener; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.Slot; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class RoadFactoryContainer extends Container { - - public RoadFactoryEntity tileEntity; - - public static final int INPUT_1 = 0; - public static final int INPUT_2 = 1; - public static final int INPUT_3 = 2; - public static final int INPUT_4 = 3; - public static final int OUTPUT_1 = 4; - public static final int OUTPUT_2 = 5; - public static final int OUTPUT_3 = 6; - public static final int OUTPUT_4 = 7; - public static final int FUEL = 8; - public static final int FLUID_IN = 9; - public static final int FLUID_IN_BUCKET = 10; - public static final int MODIFIER = 11; - - private boolean isElectric = false; - private int energy; - private int tar; - private int tick; - private int fuel; - private int fuelCap; - - public RoadFactoryContainer(InventoryPlayer invPlayer, RoadFactoryEntity tileEntity, boolean isElectric) { - this.tileEntity = tileEntity; - IItemHandler itemHandler = this.tileEntity.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, null); - addSlotToContainer(new SlotRoadIn(itemHandler, INPUT_1, 34, 20)); - addSlotToContainer(new SlotRoadIn(itemHandler, INPUT_2, 57, 20)); - addSlotToContainer(new SlotRoadIn(itemHandler, INPUT_3, 34, 43)); - addSlotToContainer(new SlotRoadIn(itemHandler, INPUT_4, 57, 43)); - addSlotToContainer(new SlotOutput(itemHandler, OUTPUT_1, 107, 20)); - addSlotToContainer(new SlotOutput(itemHandler, OUTPUT_2, 130, 20)); - addSlotToContainer(new SlotOutput(itemHandler, OUTPUT_3, 107, 43)); - addSlotToContainer(new SlotOutput(itemHandler, OUTPUT_4, 130, 43)); - if (!isElectric) { addSlotToContainer(new SlotFuel(itemHandler, FUEL, 152, 43)); } - addSlotToContainer(new SlotFluid(itemHandler, FLUID_IN, 34, 70)); - addSlotToContainer(new SlotFluid(itemHandler, FLUID_IN_BUCKET, 34, 92)); - if (itemHandler.getSlots() >= 12) { addSlotToContainer(new SlotItemHandler(itemHandler, MODIFIER, 82, 43)); } - - this.isElectric = isElectric; - addPlayerSlots(invPlayer); - } - - private void addPlayerSlots(IInventory playerInventory) { - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 9; j++) { - int x = 8 + j * 18; - int y = i * 18 + 124; - this.addSlotToContainer(new Slot(playerInventory, j + i * 9 + 9, x, y)); - } - } - - for (int i = 0; i < 9; i++) { - int x = 8 + i * 18; - int y = 58 + 124; - this.addSlotToContainer(new Slot(playerInventory, i, x, y)); - } - } - - @Override - public void detectAndSendChanges() { - RoadFactoryElectricEntity rfee = null; - if (this.isElectric) { - rfee = (RoadFactoryElectricEntity) tileEntity; - } - super.detectAndSendChanges(); - - for (int i = 0; i < this.listeners.size(); ++i) { - IContainerListener listener = this.listeners.get(i); - if (listener instanceof EntityPlayer) { - if (this.isElectric) { - if (this.energy != rfee.energy.getEnergyStored()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(0, rfee.energy.getEnergyStored()), (EntityPlayerMP) listener); - } - } - if (this.tar != tileEntity.tarFluid.getFluidAmount()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(1, tileEntity.tarFluid.getFluidAmount()), (EntityPlayerMP) listener); - } - if (this.tick != tileEntity.timerCount) { - listener.sendWindowProperty(this, 10, tileEntity.timerCount); - } - if (this.fuel != tileEntity.fuel_remaining) { - listener.sendWindowProperty(this, 11, tileEntity.fuel_remaining); - } - if (this.fuelCap != tileEntity.last_fuel_cap) { - listener.sendWindowProperty(this, 12, tileEntity.last_fuel_cap); - } - } - } - this.tar = tileEntity.tarFluid.getFluidAmount(); - this.tick = tileEntity.timerCount; - this.fuel = tileEntity.fuel_remaining; - this.fuelCap = tileEntity.last_fuel_cap; - if (rfee != null) { this.energy = rfee.energy.getEnergyStored(); } - } - - @SideOnly(Side.CLIENT) - public void updateProgressBar(int id, int data) { - FurenikusRoads.debug(1, "Road Factory syncing ID: " + id + ", data: " + data); - if (id == 10) { - tileEntity.timerCount = data; - } - if (id == 11) { - tileEntity.fuel_remaining = data; - } - if (id == 12) { - tileEntity.last_fuel_cap = data; - } - } - - @Override - public boolean canInteractWith(EntityPlayer playerIn) { - return tileEntity.canInteractWith(playerIn); - } - - @Override - public ItemStack transferStackInSlot(EntityPlayer player, int slotId) { - ItemStack stack = ItemStack.EMPTY; - Slot slot = this.inventorySlots.get(slotId); - - if (slot != null && slot.getHasStack()) { - ItemStack stack1 = slot.getStack(); - stack = stack1.copy(); - - if (slotId < tileEntity.inventory.getSlots()) { - if (!this.mergeItemStack(stack1, tileEntity.inventory.getSlots(), this.inventorySlots.size(), true)) { - return ItemStack.EMPTY; - } - } else if (!this.mergeItemStack(stack1, 0, tileEntity.inventory.getSlots(), false)) { - return ItemStack.EMPTY; - } - - if (stack1.isEmpty()) { - slot.putStack(ItemStack.EMPTY); - } else { - slot.onSlotChanged(); - } - } - return stack; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryElectricEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryElectricEntity.java deleted file mode 100644 index f7435502..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryElectricEntity.java +++ /dev/null @@ -1,100 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.roadfactory; - -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.FREnergyStorage; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; - -public class RoadFactoryElectricEntity extends RoadFactoryEntity implements ITickable, ICapabilityProvider { - - public boolean isProcessing = false; - int consumedEnergy = 0; - - public RoadFactoryElectricEntity() {} - - public FREnergyStorage energy = new FREnergyStorage(RoadsConfig.machine.electricRoadFactoryEnergyStorage, RoadsConfig.machine.electricRoadFactoryEnergyTransferRate) {}; - - public Container createContainer(EntityPlayer player) { - return new RoadFactoryContainer(player.inventory, this, true); - } - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return getCapability(capability, facing) != null; - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return CapabilityEnergy.ENERGY.cast(energy); - } - return super.getCapability(capability, facing); - } - - @Override - public void update() { - //Used for rendering. Only do it on client. - renderUpdate(); - - if (energy.getEnergyStored() > RoadsConfig.machine.electricRoadFactoryEnergyConsumption) { - //energy per tick - int ept = RoadsConfig.machine.electricRoadFactoryEnergyConsumption / RoadsConfig.machine.electricRoadFactoryTickRate; - if (timerCount < RoadsConfig.machine.electricRoadFactoryTickRate) { - if (shouldTick()) { - isProcessing = true; - timerCount++; - energy.extractEnergy(ept, false); - consumedEnergy += ept; - } else { - isProcessing = false; - timerCount = 0; - } - } else { - //Round up energy usage to config value. eg 1000 usage, at 30 ticks, would only use 990 energy. This uses the other 10. - if (consumedEnergy < RoadsConfig.machine.electricRoadFactoryEnergyConsumption) { - energy.extractEnergy(RoadsConfig.machine.electricRoadFactoryEnergyConsumption - consumedEnergy, false); - } - process(); - timerCount = 0; - } - } - - if (!world.isRemote) { - if (lastTar != tarFluid.getFluidAmount()) { - lastTar = tarFluid.getFluidAmount(); - sendUpdates(); - } - } - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("items")) { - inventory.deserializeNBT((NBTTagCompound) nbt.getTag("items")); - } - if (nbt.hasKey("energy")) { - energy.deserializeNBT((NBTTagCompound) nbt.getTag("energy")); - } - - tarFluid.readFromNBT(nbt); - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("items", inventory.serializeNBT()); - nbt.setTag("energy", energy.serializeNBT()); - - tarFluid.writeToNBT(nbt); - return nbt; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryEntity.java deleted file mode 100644 index 9ac37e5b..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryEntity.java +++ /dev/null @@ -1,324 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.roadfactory; - -import javax.annotation.Nonnull; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; -import com.silvaniastudios.roads.blocks.tileentities.recipes.RecipeRegistry; -import com.silvaniastudios.roads.blocks.tileentities.recipes.RoadFactoryRecipes; -import com.silvaniastudios.roads.fluids.FRFluids; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.inventory.Container; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidTank; -import net.minecraftforge.fluids.FluidUtil; -import net.minecraftforge.fluids.capability.CapabilityFluidHandler; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.ItemStackHandler; - -public class RoadFactoryEntity extends RoadTileEntity implements ITickable, ICapabilityProvider { - - public int timerCount = 0; - public int fillCheckTick = 0; - - public int previousFill = 0; - public boolean isFilling = false; - - public static final int TANK_CAP = 320000; - - public RoadFactoryEntity() {} - - public Container createContainer(EntityPlayer player) { - return new RoadFactoryContainer(player.inventory, this, false); - } - - public ItemStackHandler inventory = new ItemStackHandler(12) { - @Override - public boolean isItemValid(int slot, @Nonnull ItemStack stack) { - return true; - } - - @Override - protected void onContentsChanged(int slot) { - RoadFactoryEntity.this.markDirty(); - } - }; - - public RoadFactoryStackHandler interactable_inv = new RoadFactoryStackHandler(inventory, hasCapability(CapabilityEnergy.ENERGY, null)); - - public FluidTank tarFluid = new FluidTank(TANK_CAP) { - @Override - public boolean canFillFluidType(FluidStack fluid) { - for (int i = 0; i < RoadsConfig.general.tarAlternatives.length; i++) { - if (RoadsConfig.general.tarAlternatives[i].equalsIgnoreCase(fluid.getFluid().getName())) { - return true; - } - } - - return fluid.getFluid() == FRFluids.tar; - } - }; - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - return getCapability(capability, facing) != null; - } - if (capability == CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY) { - return getCapability(capability, facing) != null; - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - if (facing != null) { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(interactable_inv); - } else { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(inventory); - } - } - if (capability == CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY) { - EnumFacing sideLeft = EnumFacing.WEST; - - IBlockState state = world.getBlockState(pos); - if (state.getBlock() instanceof RoadFactoryBlock) { - RoadFactoryBlock block = (RoadFactoryBlock) state.getBlock(); - int meta = block.getMetaFromState(state); - - if (meta == 1) { sideLeft = EnumFacing.NORTH; } - if (meta == 2) { sideLeft = EnumFacing.EAST; } - if (meta == 3) { sideLeft = EnumFacing.SOUTH; } - - if (facing == sideLeft || facing == EnumFacing.UP) { - return CapabilityFluidHandler.FLUID_HANDLER_CAPABILITY.cast(tarFluid); - } - } - } - return super.getCapability(capability, facing); - } - - int lastTar = 0; - - @Override - public void update() { - renderUpdate(); - - if (fuel_remaining > 0) { - fuel_remaining--; - } else if (fuel_remaining <= 0) { - ItemStack fuel = inventory.getStackInSlot(RoadFactoryContainer.FUEL); - if (!fuel.isEmpty()) { - fuel_remaining = TileEntityFurnace.getItemBurnTime(fuel); - last_fuel_cap = fuel_remaining; - if (inventory.getStackInSlot(RoadFactoryContainer.FUEL).getItem() == Items.LAVA_BUCKET) { - inventory.setStackInSlot(RoadFactoryContainer.FUEL, new ItemStack(Items.BUCKET)); - } else { - inventory.extractItem(RoadFactoryContainer.FUEL, 1, false); - } - sendUpdates(); - } else { - timerCount = 0; - return; - } - } - if (timerCount < RoadsConfig.machine.roadFactoryTickRate) { - if (shouldTick()) { - timerCount++; - fillCheckTick = timerCount; - } else { - timerCount = 0; - } - } else { - if (fuel_remaining > 0) { - process(); - } - timerCount = 0; - } - - if (!world.isRemote) { - if (lastTar != tarFluid.getFluidAmount()) { - lastTar = tarFluid.getFluidAmount(); - sendUpdates(); - } - } - } - - public void extract(int iterations) { - for (int i = 0; i < iterations; i++) { - if (inventory.extractItem(RoadFactoryContainer.INPUT_1, 8, false) == ItemStack.EMPTY) { - if (inventory.extractItem(RoadFactoryContainer.INPUT_2, 8, false) == ItemStack.EMPTY) { - if (inventory.extractItem(RoadFactoryContainer.INPUT_3, 8, false) == ItemStack.EMPTY) { - if (inventory.extractItem(RoadFactoryContainer.INPUT_4, 8, false) == ItemStack.EMPTY) { - FurenikusRoads.debug(0, "WARNING! A road factory is creating free resources. Please report to Fureniku https://discord.gg/BPzpQk2"); - } - } - } - } - } - } - - public void process() { - FurenikusRoads.debug(2, "Road Factory at" + formatPosition(pos) + "processing"); - if (!world.isRemote) { - boolean hasChanges = false; - ItemStack result = getRecipeResult(); - if (result != ItemStack.EMPTY && tarFluid.getFluidAmount() >= 100 * result.getCount()/8) { - if (result.getCount() == 8) { - extract(1); - } else if (result.getCount() == 16) { - extract(2); - } else if (result.getCount() == 24) { - extract(3); - } else if (result.getCount() == 32) { - extract(4); - } - - putItemsInSlot(result, false); - - hasChanges = true; - tarFluid.drain(new FluidStack(tarFluid.getFluid().getFluid(), 100 * result.getCount()/8), true); - } - - ItemStack fluid_in = inventory.getStackInSlot(RoadFactoryContainer.FLUID_IN); - ItemStack bucket_out = inventory.getStackInSlot(RoadFactoryContainer.FLUID_IN_BUCKET); - - if (fluid_in.getUnlocalizedName().compareTo("item.forge.bucketFilled") == 0) { - FluidStack fluidStack = FluidUtil.getFluidContained(fluid_in); - for (int i = 0; i < RecipeRegistry.tar.size(); i++) { - if (RecipeRegistry.tar.get(i).getFluid() == fluidStack.getFluid() && tarFluid.fill(fluidStack, false) == fluidStack.amount) { - if (tarFluid.getFluidAmount() <= TANK_CAP - fluidStack.amount && (bucket_out.isEmpty() || bucket_out.getCount() < bucket_out.getMaxStackSize())) { - tarFluid.fill(fluidStack, true); - inventory.setStackInSlot(RoadFactoryContainer.FLUID_IN, ItemStack.EMPTY); - if (bucket_out.isEmpty()) {//TODO this is bad. Or is it? We only support buckets rn. Change if we support other fluid containers. - inventory.setStackInSlot(RoadFactoryContainer.FLUID_IN_BUCKET, new ItemStack(Items.BUCKET)); - } else { - bucket_out.setCount(bucket_out.getCount() + 1); - } - hasChanges = true; - } - break; - } - } - } - if (hasChanges) { sendUpdates(); } - } - } - - public void renderUpdate() { - if (world.isRemote) { - if (fillCheckTick < RoadsConfig.machine.roadFactoryTickRate) { - fillCheckTick++; - } else { - if (previousFill < tarFluid.getFluidAmount()) { - previousFill = tarFluid.getFluidAmount(); - isFilling = true; - } else { - isFilling = false; - } - fillCheckTick = 0; - } - } - } - - public boolean shouldTick() { - if (tarFluid.getFluidAmount() >= 100 && getRecipeResult() != ItemStack.EMPTY) { - return true; - } - - ItemStack fluid_in = inventory.getStackInSlot(RoadFactoryContainer.FLUID_IN); - ItemStack bucket_out = inventory.getStackInSlot(RoadFactoryContainer.FLUID_IN_BUCKET); - - if (fluid_in.getUnlocalizedName().compareTo("item.forge.bucketFilled") == 0) { - if (tarFluid.getFluidAmount() <= TANK_CAP - 100 && (bucket_out.isEmpty() || bucket_out.getCount() < bucket_out.getMaxStackSize())) { - return true; - } - } - return false; - } - - public ItemStack getRecipeResult() { - for (int i = 0; i < RecipeRegistry.roadFactoryRecipes.size(); i++) { - RoadFactoryRecipes recipe = RecipeRegistry.roadFactoryRecipes.get(i); - ItemStack out = recipe.getCraftingResult(inventory); - - ItemStack sim = out.copy(); - - if (out != ItemStack.EMPTY) { - sim = inventory.insertItem(RoadFactoryContainer.OUTPUT_1, sim, true); - if (sim != ItemStack.EMPTY) { sim = inventory.insertItem(RoadFactoryContainer.OUTPUT_2, sim, true); } - if (sim != ItemStack.EMPTY) { sim = inventory.insertItem(RoadFactoryContainer.OUTPUT_3, sim, true); } - if (sim != ItemStack.EMPTY) { sim = inventory.insertItem(RoadFactoryContainer.OUTPUT_4, sim, true); } - if (sim == ItemStack.EMPTY) { - return out; - } - } - } - return ItemStack.EMPTY; - } - - public void putItemsInSlot(ItemStack stack, boolean simulate) { - if (stack != ItemStack.EMPTY) { - stack = inventory.insertItem(RoadFactoryContainer.OUTPUT_1, stack, false); - } - - if (stack != ItemStack.EMPTY) { - stack = inventory.insertItem(RoadFactoryContainer.OUTPUT_2, stack, false); - } - - if (stack != ItemStack.EMPTY) { - stack = inventory.insertItem(RoadFactoryContainer.OUTPUT_3, stack, false); - } - - if (stack != ItemStack.EMPTY) { - stack = inventory.insertItem(RoadFactoryContainer.OUTPUT_4, stack, false); - } - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("items")) { - inventory.deserializeNBT((NBTTagCompound) nbt.getTag("items")); - } - - fuel_remaining = nbt.getInteger("fuel"); - last_fuel_cap = nbt.getInteger("fuel_last_used"); - - tarFluid.readFromNBT(nbt); - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("items", inventory.serializeNBT()); - nbt.setInteger("fuel", fuel_remaining); - nbt.setInteger("fuel_last_used", last_fuel_cap); - - tarFluid.writeToNBT(nbt); - return nbt; - } - - @Override - public NBTTagCompound writeToNBT(NBTTagCompound nbt) { - super.writeToNBT(nbt); - return writeNBT(nbt); - } - - @Override - public void readFromNBT(NBTTagCompound nbt) { - super.readFromNBT(nbt); - readNBT(nbt); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryStackHandler.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryStackHandler.java deleted file mode 100644 index d3df60fe..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/RoadFactoryStackHandler.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.roadfactory; - -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.NonNullList; -import net.minecraftforge.fluids.UniversalBucket; -import net.minecraftforge.items.ItemStackHandler; - -public class RoadFactoryStackHandler extends ItemStackHandler { - - private final ItemStackHandler internalStackHandler; - boolean electric; - - public int[] inputSlots = { - RoadFactoryContainer.INPUT_1, - RoadFactoryContainer.INPUT_2, - RoadFactoryContainer.INPUT_3, - RoadFactoryContainer.INPUT_4 - }; - public int[] outputSlots = { - RoadFactoryContainer.OUTPUT_1, - RoadFactoryContainer.OUTPUT_2, - RoadFactoryContainer.OUTPUT_3, - RoadFactoryContainer.OUTPUT_4, - RoadFactoryContainer.FLUID_IN_BUCKET - }; - - private int fuelSlot = RoadFactoryContainer.FUEL; - - public RoadFactoryStackHandler(ItemStackHandler ish, boolean electric) { - super(); - this.electric = electric; - internalStackHandler = ish; - } - - @Override - public void setSize(int size) { - stacks = NonNullList.withSize(size, ItemStack.EMPTY); - } - - @Override - public void setStackInSlot(int slot, ItemStack stack) { - internalStackHandler.setStackInSlot(slot, stack); - } - - @Override - public int getSlots() { - return internalStackHandler.getSlots(); - } - - @Override - public ItemStack getStackInSlot(int slot) { - return internalStackHandler.getStackInSlot(slot); - } - - @Override - public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - if (slot == fuelSlot && TileEntityFurnace.getItemBurnTime(stack) > 0 && !electric) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - if (slot == RoadFactoryContainer.FLUID_IN && stack.getItem() instanceof UniversalBucket) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - for (int i = 0; i < inputSlots.length; i++) { - //Road factory only ever has blocks as an input. - //This is a bit lazier than a proper validation list. Players are responsible for their own filtering beyond this though! - //This only makes sure that tar buckets and coal don't accidentally go to the wrong slot. - if (inputSlots[i] == slot && stack.getItem() instanceof ItemBlock) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - } - - return stack; - } - - @Override - public ItemStack extractItem(int slot, int amount, boolean simulate) { - for (int i = 0; i < outputSlots.length; i++) { - if (outputSlots[i] == slot) { - return internalStackHandler.extractItem(slot, amount, simulate); - } - } - return ItemStack.EMPTY; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/SlotRoadIn.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/SlotRoadIn.java deleted file mode 100644 index 616ed09c..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/roadfactory/SlotRoadIn.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.roadfactory; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.FRBlocks; - -import net.minecraft.block.Block; -import net.minecraft.init.Blocks; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class SlotRoadIn extends SlotItemHandler { - - public SlotRoadIn(IItemHandler itemHandler, int index, int xPosition, int yPosition) { - super(itemHandler, index, xPosition, yPosition); - } - - @Override - public boolean isItemValid(@Nullable ItemStack stack) { - if (stack.getItem() instanceof ItemBlock) { - ItemBlock ib = (ItemBlock) stack.getItem(); - Block block = ib.getBlock(); - int meta = stack.getItemDamage(); - if (block == Blocks.GRAVEL || block == Blocks.COBBLESTONE || block == Blocks.DIRT || block == Blocks.GRASS || block == Blocks.SAND) { - return true; - } - if (block == Blocks.STONE) { - if (meta == 0 || meta == 1 || meta == 3 || meta == 5 || meta == 6) { - return true; - } - } - if (block == FRBlocks.generic_blocks) { - if (meta == 0) { - return true; - } - } - } - return false; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/SlotBlade.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/SlotBlade.java deleted file mode 100644 index bd1d23de..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/SlotBlade.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.tarmaccutter; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.items.TarmacCutterBlade; - -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class SlotBlade extends SlotItemHandler { - - public SlotBlade(IItemHandler itemHandler, int index, int xPosition, int yPosition) { - super(itemHandler, index, xPosition, yPosition); - } - - @Override - public boolean isItemValid(@Nullable ItemStack stack) { - return stack.getItem() instanceof TarmacCutterBlade; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/SlotTarmacCutter.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/SlotTarmacCutter.java deleted file mode 100644 index 4e7c1014..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/SlotTarmacCutter.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.tarmaccutter; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.RoadBlock; - -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraftforge.items.IItemHandler; -import net.minecraftforge.items.SlotItemHandler; - -public class SlotTarmacCutter extends SlotItemHandler { - - public SlotTarmacCutter(IItemHandler itemHandler, int index, int xPosition, int yPosition) { - super(itemHandler, index, xPosition, yPosition); - } - - @Override - public boolean isItemValid(@Nullable ItemStack stack) { - if (stack.getItem() instanceof ItemBlock) { - ItemBlock ib = (ItemBlock) stack.getItem(); - - return ib.getBlock() instanceof RoadBlock; - } - return false; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterBlock.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterBlock.java deleted file mode 100644 index 798c285f..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterBlock.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.tarmaccutter; - -import java.util.List; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.blocks.tileentities.RoadTEBlock; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; -import com.silvaniastudios.roads.items.TarmacCutterBlade; - -import net.minecraft.block.properties.IProperty; -import net.minecraft.block.properties.PropertyEnum; -import net.minecraft.block.state.BlockStateContainer; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.IStringSerializable; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class TarmacCutterBlock extends RoadTEBlock { - - public static final PropertyEnum BLADE = PropertyEnum.create("blade", EnumBladeType.class); - - public TarmacCutterBlock(String name, boolean electric) { - super(name, electric, 4); - this.setDefaultState(this.blockState.getBaseState() - .withProperty(ROTATION, RoadTEBlock.EnumRotation.north) - .withProperty(BLADE, EnumBladeType.none) - .withProperty(FURNACE_ACTIVE, false)); - } - - @Override - public TileEntity createTileEntity(World worldIn, IBlockState state) { - if (electric) { - return new TarmacCutterElectricEntity(); - } - return new TarmacCutterEntity(); - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("roads.gui.tarmac_cutter.tooltip_1")); - tooltip.add(I18n.format("roads.gui.tarmac_cutter.tooltip_2")); - } - - protected BlockStateContainer createBlockState() { - return new BlockStateContainer(this, new IProperty[] {ROTATION, BLADE, FURNACE_ACTIVE, BASE_PLATE}); - } - - @Override - public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos) { - return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.5625D, 1.0D); - } - - @Override - public AxisAlignedBB getCollisionBoundingBox(IBlockState state, IBlockAccess world, BlockPos pos) { - return new AxisAlignedBB(0.0D, 0.0D, 0.0D, 1.0D, 0.5625D, 1.0D); - } - - @SuppressWarnings("deprecation") - public IBlockState getActualState(IBlockState state, IBlockAccess world, BlockPos pos) { - TileEntity te = world.getTileEntity(pos); - if (te instanceof RoadTileEntity) { - RoadTileEntity tileEntity = (RoadTileEntity) te; - EnumBladeType bladeType = getBladeType(world, pos); - if (tileEntity.fuel_remaining > 0) { - return state.withProperty(FURNACE_ACTIVE, true).withProperty(BLADE, bladeType).withProperty(BASE_PLATE, hasBasePlate(world, pos)); - } else { - return state.withProperty(FURNACE_ACTIVE, false).withProperty(BLADE, bladeType).withProperty(BASE_PLATE, hasBasePlate(world, pos)); - } - } - return super.getActualState(state, world, pos); - } - - public EnumBladeType getBladeType(IBlockAccess world, BlockPos pos) { - TileEntity tile = world.getTileEntity(pos); - if (tile != null && tile instanceof TarmacCutterEntity) { - TarmacCutterEntity te = (TarmacCutterEntity) tile; - - ItemStack item = te.inventory.getStackInSlot(TarmacCutterContainer.BLADE); - if (item.getItem() instanceof TarmacCutterBlade) { - TarmacCutterBlade blade = (TarmacCutterBlade) item.getItem(); - return EnumBladeType.byName(blade.getType()); - } - } - return EnumBladeType.none; - } - - public static enum EnumBladeType implements IStringSerializable { - none("none"), - iron("iron"), - gold("gold"), - diamond("diamond"); - - private final String name; - - private static final EnumBladeType[] META_LOOKUP = new EnumBladeType[values().length]; - - private EnumBladeType(String name) { - this.name = name; - } - - @Override - public String getName() { - return this.name; - } - - public static EnumBladeType byName(String name) { - if (name != null) { - for (int i = 0; i < META_LOOKUP.length; i++) { - if (byMeta(i) != null) { - if (byMeta(i).name.equalsIgnoreCase(name)) { - return byMeta(i); - } - } - } - } - - return EnumBladeType.none; - } - - public static EnumBladeType byMeta(int meta) { - if (meta == 0) { return EnumBladeType.none; } - if (meta == 1) { return EnumBladeType.iron; } - if (meta == 2) { return EnumBladeType.gold; } - - return EnumBladeType.diamond; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterContainer.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterContainer.java deleted file mode 100644 index 3ba94295..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterContainer.java +++ /dev/null @@ -1,151 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.tarmaccutter; - - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.SlotFuel; -import com.silvaniastudios.roads.blocks.tileentities.SlotOutput; -import com.silvaniastudios.roads.network.ClientGuiUpdatePacket; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.inventory.IContainerListener; -import net.minecraft.inventory.IInventory; -import net.minecraft.inventory.Slot; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.IItemHandler; - -public class TarmacCutterContainer extends Container { - - public TarmacCutterEntity tileEntity; - - public static final int INPUT = 0; - public static final int BLADE = 1; - public static final int OUTPUT_1 = 2; - public static final int OUTPUT_2 = 3; - public static final int FUEL = 4; - - private boolean isElectric = false; - private int energy; - private int tick; - private int fuel; - private int fuelCap; - - public TarmacCutterContainer(InventoryPlayer invPlayer, TarmacCutterEntity tileEntity, boolean isElectric) { - this.tileEntity = tileEntity; - - IItemHandler itemHandler = this.tileEntity.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, null); - addSlotToContainer(new SlotTarmacCutter(itemHandler, INPUT, 8, 32)); - addSlotToContainer(new SlotBlade(itemHandler, BLADE, 53, 32)); - addSlotToContainer(new SlotOutput(itemHandler, OUTPUT_1, 98, 32)); - addSlotToContainer(new SlotOutput(itemHandler, OUTPUT_2, 116, 32)); - if (!isElectric) { addSlotToContainer(new SlotFuel(itemHandler, FUEL, 152, 32)); } - - this.isElectric = isElectric; - addPlayerSlots(invPlayer); - } - - private void addPlayerSlots(IInventory playerInventory) { - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 9; j++) { - int x = 8 + j * 18; - int y = i * 18 + 64; - this.addSlotToContainer(new Slot(playerInventory, j + i * 9 + 9, x, y)); - } - } - - for (int i = 0; i < 9; i++) { - int x = 8 + i * 18; - int y = 58 + 64; - this.addSlotToContainer(new Slot(playerInventory, i, x, y)); - } - } - - @Override - public void detectAndSendChanges() { - TarmacCutterElectricEntity tcee = null; - if (this.isElectric) { - tcee = (TarmacCutterElectricEntity) tileEntity; - } - super.detectAndSendChanges(); - - for (int i = 0; i < this.listeners.size(); ++i) { - IContainerListener listener = this.listeners.get(i); - if (listener instanceof EntityPlayer) { - if (tcee != null) { - if (this.energy != tcee.energy.getEnergyStored()) { - FurenikusRoads.PACKET_CHANNEL.sendTo(new ClientGuiUpdatePacket(0, tcee.energy.getEnergyStored()), (EntityPlayerMP) listener); - } - } - if (this.tick != tileEntity.timerCount) { - listener.sendWindowProperty(this, 10, tileEntity.timerCount); - } - if (this.fuel != tileEntity.fuel_remaining) { - listener.sendWindowProperty(this, 11, tileEntity.fuel_remaining); - } - if (this.fuelCap != tileEntity.last_fuel_cap) { - listener.sendWindowProperty(this, 12, tileEntity.last_fuel_cap); - } - } - } - if (tcee != null) { this.energy = tcee.energy.getEnergyStored(); } - this.tick = tileEntity.timerCount; - this.fuel = tileEntity.fuel_remaining; - this.fuelCap = tileEntity.last_fuel_cap; - } - - @SideOnly(Side.CLIENT) - public void updateProgressBar(int id, int data) { - FurenikusRoads.debug(1, "Tarmac Cutter syncing ID: " + id + ", data: " + data); - if (id == 10) { - tileEntity.timerCount = data; - } - if (id == 11) { - tileEntity.fuel_remaining = data; - } - if (id == 12) { - tileEntity.last_fuel_cap = data; - } - } - - @Override - public boolean canInteractWith(EntityPlayer playerIn) { - return tileEntity.canInteractWith(playerIn); - } - - @Override - public ItemStack transferStackInSlot(EntityPlayer player, int slotId) { - ItemStack stack = ItemStack.EMPTY; - Slot slot = this.inventorySlots.get(slotId); - - if (slot != null && slot.getHasStack()) { - ItemStack stack1 = slot.getStack(); - stack = stack1.copy(); - - if (slotId < tileEntity.inventory.getSlots()) { - if (!this.mergeItemStack(stack1, tileEntity.inventory.getSlots(), this.inventorySlots.size(), true)) { - return ItemStack.EMPTY; - } - } else if (!this.mergeItemStack(stack1, 0, tileEntity.inventory.getSlots(), false)) { - return ItemStack.EMPTY; - } - - if (stack1.isEmpty()) { - slot.putStack(ItemStack.EMPTY); - } else { - slot.onSlotChanged(); - } - } - return stack; - } - - @Override - public void onContainerClosed(EntityPlayer playerIn) { - tileEntity.sendUpdates(); - super.onContainerClosed(playerIn); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterElectricEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterElectricEntity.java deleted file mode 100644 index 394fda67..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterElectricEntity.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.tarmaccutter; - -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.FREnergyStorage; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; - -public class TarmacCutterElectricEntity extends TarmacCutterEntity implements ITickable, ICapabilityProvider { - - public boolean isProcessing = false; - int consumedEnergy = 0; - - public TarmacCutterElectricEntity() {} - - public FREnergyStorage energy = new FREnergyStorage(RoadsConfig.machine.electricTarmacCutterEnergyStorage, RoadsConfig.machine.electricTarmacCutterEnergyTransferRate) {}; - - public Container createContainer(EntityPlayer player) { - return new TarmacCutterContainer(player.inventory, this, true); - } - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return getCapability(capability, facing) != null; - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityEnergy.ENERGY) { - return CapabilityEnergy.ENERGY.cast(energy); - } - - return super.getCapability(capability, facing); - } - - @Override - public void update() { - if (energy.getEnergyStored() > RoadsConfig.machine.electricTarmacCutterEnergyConsumption) { - //energy per tick - int ept = RoadsConfig.machine.electricTarmacCutterEnergyConsumption / RoadsConfig.machine.electricTarmacCutterTickRate; - if (timerCount < RoadsConfig.machine.electricTarmacCutterTickRate) { - if (shouldTick()) { - isProcessing = true; - timerCount++; - energy.extractEnergy(ept, false); - consumedEnergy += ept; - } else { - isProcessing = false; - timerCount = 0; - } - } else { - //Round up energy usage to config value. eg 1000 usage, at 30 ticks, would only use 990 energy. This uses the other 10. - if (consumedEnergy < RoadsConfig.machine.electricTarmacCutterEnergyConsumption) { - energy.extractEnergy(RoadsConfig.machine.electricTarmacCutterEnergyConsumption - consumedEnergy, false); - } - consumedEnergy = 0; - process(); - - if (!world.isRemote) { - sendUpdates(); - } - timerCount = 0; - } - } - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("items")) { - inventory.deserializeNBT((NBTTagCompound) nbt.getTag("items")); - } - if (nbt.hasKey("energy")) { - energy.deserializeNBT((NBTTagCompound) nbt.getTag("energy")); - } - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("items", inventory.serializeNBT()); - nbt.setTag("energy", energy.serializeNBT()); - return nbt; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterEntity.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterEntity.java deleted file mode 100644 index 46a75c5f..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterEntity.java +++ /dev/null @@ -1,221 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.tarmaccutter; - -import javax.annotation.Nonnull; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.RoadBlock; -import com.silvaniastudios.roads.blocks.tileentities.RoadTileEntity; -import com.silvaniastudios.roads.items.FRItems; -import com.silvaniastudios.roads.items.TarmacCutterBlade; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Items; -import net.minecraft.inventory.Container; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ITickable; -import net.minecraftforge.common.capabilities.Capability; -import net.minecraftforge.common.capabilities.ICapabilityProvider; -import net.minecraftforge.energy.CapabilityEnergy; -import net.minecraftforge.items.CapabilityItemHandler; -import net.minecraftforge.items.ItemStackHandler; - -public class TarmacCutterEntity extends RoadTileEntity implements ITickable, ICapabilityProvider { - - public int timerCount = 0; - - public TarmacCutterEntity() {} - - public ItemStackHandler inventory = new ItemStackHandler(5) { - - @Override - public boolean isItemValid(int slot, @Nonnull ItemStack stack) { - return true; - } - - @Override - protected void onContentsChanged(int slot) { - TarmacCutterEntity.this.markDirty(); - } - }; - - public TarmacCutterStackHandler interactable_inv = new TarmacCutterStackHandler(inventory, hasCapability(CapabilityEnergy.ENERGY, null)); - - public Container createContainer(EntityPlayer player) { - return new TarmacCutterContainer(player.inventory, this, false); - } - - @Override - public boolean hasCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - return getCapability(capability, facing) != null; - } - return super.hasCapability(capability, facing); - } - - @Override - public T getCapability(Capability capability, EnumFacing facing) { - if (capability == CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) { - if (facing != null) { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(interactable_inv); - } else { - return CapabilityItemHandler.ITEM_HANDLER_CAPABILITY.cast(inventory); - } - } - - return super.getCapability(capability, facing); - } - - @Override - public void update() { - if (fuel_remaining > 0) { - fuel_remaining--; - } else if (fuel_remaining <= 0) { - if (!inventory.getStackInSlot(TarmacCutterContainer.FUEL).isEmpty()) { - fuel_remaining = TileEntityFurnace.getItemBurnTime(inventory.getStackInSlot(TarmacCutterContainer.FUEL)); - last_fuel_cap = fuel_remaining; - if (inventory.getStackInSlot(4).getItem() == Items.LAVA_BUCKET) { - inventory.setStackInSlot(4, new ItemStack(Items.BUCKET)); - } else { - inventory.extractItem(4, 1, false); - } - sendUpdates(); - } else { - timerCount = 0; - return; - } - } - - if (timerCount < RoadsConfig.machine.tarmacCutterTickRate) { - if (shouldTick()) { - timerCount++; - } else { - timerCount = 0; - } - } else { - if (fuel_remaining > 0) { - process(); - } - timerCount = 0; - } - } - - public void process() { - FurenikusRoads.debug(2, "Tarmac Cutter at" + formatPosition(pos) + "processing"); - if (!world.isRemote) { - ItemStack in = inventory.getStackInSlot(TarmacCutterContainer.INPUT); - ItemStack blade = inventory.getStackInSlot(TarmacCutterContainer.BLADE); - ItemStack blockOut = inventory.getStackInSlot(TarmacCutterContainer.OUTPUT_1); - ItemStack fragOut = inventory.getStackInSlot(TarmacCutterContainer.OUTPUT_2); //If you didn't read this var name in an angry call of duty man voice... you're lying you did. - - if (blade.getItem() instanceof TarmacCutterBlade) { - if (blade.getItemDamage() < blade.getMaxDamage()) { - int cutSize = getCutSize(blade); - - if (in.getItemDamage() >= cutSize && in.getItem() instanceof ItemBlock) { - ItemBlock ib = (ItemBlock) in.getItem(); - - if (ib.getBlock() instanceof RoadBlock) { - RoadBlock block = (RoadBlock) ib.getBlock(); - if (blockOut.isEmpty() || (blockOut.getItem() == in.getItem() && blockOut.getItemDamage() == in.getItemDamage() - cutSize)) { - if (fragOut.isEmpty() || (fragOut.getItem() == block.getFragmentItem() && fragOut.getCount() <= fragOut.getMaxStackSize() - cutSize)) { - in.setCount(in.getCount() - 1); - - if (blockOut.isEmpty()) { - inventory.setStackInSlot(2, new ItemStack(in.getItem(), 1, in.getItemDamage()-cutSize)); - } else { - blockOut.setCount(blockOut.getCount() + 1); - } - - if (fragOut.isEmpty()) { - ItemStack fragment = new ItemStack(block.getFragmentItem(), cutSize); - inventory.setStackInSlot(3, fragment); - } else { - fragOut.setCount(fragOut.getCount() + cutSize); - } - - blade.setItemDamage(blade.getItemDamage() + 1); - sendUpdates(); - } - } - } - } - } else { - inventory.setStackInSlot(TarmacCutterContainer.BLADE, ItemStack.EMPTY); - } - } - } - } - - public boolean shouldTick() { - ItemStack in = inventory.getStackInSlot(0); - ItemStack blade = inventory.getStackInSlot(1); - ItemStack blockOut = inventory.getStackInSlot(2); - ItemStack fragOut = inventory.getStackInSlot(3); - - if (blade.getItem() instanceof TarmacCutterBlade && blade.getItemDamage() < blade.getMaxDamage()) { - int cutSize = getCutSize(blade); - - if (in.getItemDamage() >= cutSize && in.getItem() instanceof ItemBlock) { - ItemBlock ib = (ItemBlock) in.getItem(); - - if (ib.getBlock() instanceof RoadBlock) { - RoadBlock block = (RoadBlock) ib.getBlock(); - if (blockOut.isEmpty() || (blockOut.getItem() == in.getItem() && blockOut.getItemDamage() == in.getItemDamage() - cutSize && blockOut.getCount() <= blockOut.getMaxStackSize() + in.getCount())) { - if (fragOut.isEmpty() || (fragOut.getItem() == block.getFragmentItem() && fragOut.getCount() <= fragOut.getMaxStackSize() - cutSize)) { - return true; - } - } - } - } - } - return false; - } - - public int getCutSize(ItemStack stack) { - if (stack.getItem() instanceof TarmacCutterBlade) { - TarmacCutterBlade blade = (TarmacCutterBlade) stack.getItem(); - return blade.size; - } - if (stack.getItem() == FRItems.tarmac_cutter_blade_1_iron || stack.getItem() == FRItems.tarmac_cutter_blade_1_gold || stack.getItem() == FRItems.tarmac_cutter_blade_1_diamond) { return 1; } - if (stack.getItem() == FRItems.tarmac_cutter_blade_2_iron || stack.getItem() == FRItems.tarmac_cutter_blade_2_gold || stack.getItem() == FRItems.tarmac_cutter_blade_2_diamond) { return 2; } - if (stack.getItem() == FRItems.tarmac_cutter_blade_4_iron || stack.getItem() == FRItems.tarmac_cutter_blade_4_gold || stack.getItem() == FRItems.tarmac_cutter_blade_4_diamond) { return 4; } - if (stack.getItem() == FRItems.tarmac_cutter_blade_8_iron || stack.getItem() == FRItems.tarmac_cutter_blade_8_gold || stack.getItem() == FRItems.tarmac_cutter_blade_8_diamond) { return 8; } - return 0; - } - - @Override - public void readNBT(NBTTagCompound nbt) { - if (nbt.hasKey("items")) { - inventory.deserializeNBT((NBTTagCompound) nbt.getTag("items")); - } - - fuel_remaining = nbt.getInteger("fuel"); - last_fuel_cap = nbt.getInteger("fuel_last_used"); - } - - @Override - public NBTTagCompound writeNBT(NBTTagCompound nbt) { - nbt.setTag("items", inventory.serializeNBT()); - - nbt.setInteger("fuel", fuel_remaining); - nbt.setInteger("fuel_last_used", last_fuel_cap); - return nbt; - } - - @Override - public NBTTagCompound writeToNBT(NBTTagCompound nbt) { - super.writeToNBT(nbt); - return writeNBT(nbt); - } - - @Override - public void readFromNBT(NBTTagCompound nbt) { - super.readFromNBT(nbt); - readNBT(nbt); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterStackHandler.java b/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterStackHandler.java deleted file mode 100644 index 1e358aa4..00000000 --- a/src/main/java/com/silvaniastudios/roads/blocks/tileentities/tarmaccutter/TarmacCutterStackHandler.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.silvaniastudios.roads.blocks.tileentities.tarmaccutter; - -import com.silvaniastudios.roads.blocks.RoadBlock; -import com.silvaniastudios.roads.items.TarmacCutterBlade; - -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.NonNullList; -import net.minecraftforge.items.ItemStackHandler; - -public class TarmacCutterStackHandler extends ItemStackHandler { - - private final ItemStackHandler internalStackHandler; - boolean electric; - - public TarmacCutterStackHandler(ItemStackHandler ish, boolean electric) { - super(); - this.electric = electric; - internalStackHandler = ish; - } - - @Override - public void setSize(int size) { - stacks = NonNullList.withSize(size, ItemStack.EMPTY); - } - - @Override - public void setStackInSlot(int slot, ItemStack stack) { - internalStackHandler.setStackInSlot(slot, stack); - } - - @Override - public int getSlots() { - return internalStackHandler.getSlots(); - } - - @Override - public ItemStack getStackInSlot(int slot) { - return internalStackHandler.getStackInSlot(slot); - } - - @Override - public ItemStack insertItem(int slot, ItemStack stack, boolean simulate) { - if (slot == TarmacCutterContainer.FUEL && TileEntityFurnace.getItemBurnTime(stack) > 0 && !electric) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - if (slot == TarmacCutterContainer.BLADE && stack.getItem() instanceof TarmacCutterBlade) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - - if (slot == TarmacCutterContainer.INPUT) { - if (stack.getItem() instanceof ItemBlock) { - ItemBlock ib = (ItemBlock) stack.getItem(); - if (ib.getBlock() instanceof RoadBlock) { - return internalStackHandler.insertItem(slot, stack, simulate); - } - } - } - - return stack; - } - - @Override - public ItemStack extractItem(int slot, int amount, boolean simulate) { - if (slot == TarmacCutterContainer.OUTPUT_1 || slot == TarmacCutterContainer.OUTPUT_2) { - return internalStackHandler.extractItem(slot, amount, simulate); - } - return ItemStack.EMPTY; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/BoundingBoxDraw.java b/src/main/java/com/silvaniastudios/roads/client/BoundingBoxDraw.java deleted file mode 100644 index 4e1b7699..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/BoundingBoxDraw.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.silvaniastudios.roads.client; - -import java.util.ArrayList; - -import com.silvaniastudios.roads.blocks.decorative.CurbBlock; -import com.silvaniastudios.roads.blocks.diagonal.RoadBlockDiagonal; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.RenderGlobal; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.vertex.DefaultVertexFormats; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.util.math.AxisAlignedBB; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.World; -import net.minecraftforge.client.event.DrawBlockHighlightEvent; -import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; - -public class BoundingBoxDraw { - - @SubscribeEvent - public static void drawBlockHighlight(DrawBlockHighlightEvent event) { - BlockPos pos = event.getTarget().getBlockPos(); - EntityPlayer player = event.getPlayer(); - World world = player.world; - - if (event.getTarget().typeOfHit == RayTraceResult.Type.BLOCK) { - IBlockState state = world.getBlockState(pos); - - double d3 = player.lastTickPosX + (player.posX - player.lastTickPosX) * (double) event.getPartialTicks(); - double d4 = player.lastTickPosY + (player.posY - player.lastTickPosY) * (double) event.getPartialTicks(); - double d5 = player.lastTickPosZ + (player.posZ - player.lastTickPosZ) * (double) event.getPartialTicks(); - - if (state.getBlock() instanceof RoadBlockDiagonal) { - RoadBlockDiagonal block = (RoadBlockDiagonal) state.getBlock(); - - AxisAlignedBB box = new AxisAlignedBB(0,0,0,1,1,1); - drawHalfBox(pos, block.getLeftVecs(world, state, pos), block.getRightVecs(world, state, pos), 0, 0, 0, 0.4f, d3, d4, d5); - - box.grow(0.0020000000949949026D).offset(d3, d4, d5); - } - if (state.getBlock() instanceof CurbBlock) { - CurbBlock block = (CurbBlock) state.getBlock(); - - drawNormalBox(pos, block.getVecs(world, state, pos), 0, 0, 0, 0.4f, d3, d4, d5); - } - } - } - - public static void drawNormalBox(BlockPos pos, Vec3d[] vecs, float r, float g, float b, float a, double pX, double pY, double pZ) { - Tessellator tessellator = Tessellator.getInstance(); - BufferBuilder buffer = tessellator.getBuffer(); - buffer.begin(3, DefaultVertexFormats.POSITION_COLOR); - - draw(vecs, buffer, r, g, b, a, pos, pX, pY, pZ); - - tessellator.draw(); - } - - public static void drawHalfBox(BlockPos pos, Vec3d[] vecsLeft, Vec3d[] vecsRight, float r, float g, float b, float a, double pX, double pY, double pZ) { - Tessellator tessellator = Tessellator.getInstance(); - BufferBuilder buffer = tessellator.getBuffer(); - buffer.begin(3, DefaultVertexFormats.POSITION_COLOR); - - draw(vecsLeft, buffer, r, g, b, a, pos, pX, pY, pZ); - draw(vecsRight, buffer, r, g, b, a, pos, pX, pY, pZ); - - tessellator.draw(); - } - - public static void draw(Vec3d[] vecs, BufferBuilder buffer, float r, float g, float b, float a, BlockPos pos, double pX, double pY, double pZ) { - for (int i = 0; i < vecs.length; i++) { - Vec3d vec = offsetVector(offsetVector(vecs[i], pos), -pX, -pY, -pZ); - - double x = vec.x; - double y = vec.y; - double z = vec.z; - - if (i == 0) { - buffer.pos(x, y, z).color(r, g, b, 0.0f).endVertex(); - } - - buffer.pos(x, y, z).color(r, g, b, a).endVertex(); - - if (i == vecs.length) { - buffer.pos(x, y, z).color(r, g, b, 0.0f).endVertex(); - } - } - } - - static Vec3d offsetVector(Vec3d vec, BlockPos pos) { - return offsetVector(vec, pos.getX(), pos.getY(), pos.getZ()); - } - - static Vec3d offsetVector(Vec3d vec, double x, double y, double z) { - return new Vec3d(vec.x + x, vec.y + y, vec.z + z); - } - - //idk why its being dumb and needing different offsets depending on the rotation but oh well - public static Vec3d[] getRotatedVecs(Vec3d[] vecsIn, int rot, Vec3d offset) { - Vec3d vecs[] = new Vec3d[vecsIn.length]; - - for (int i = 0; i < vecsIn.length; i++) { - Vec3d offsetVec = new Vec3d(vecsIn[i].x + 0.5, vecsIn[i].y + 0.5, vecsIn[i].z + 0.5).rotateYaw((float) Math.toRadians(rot)); - vecs[i] = new Vec3d(offsetVec.x - 0.5 + offset.x, offsetVec.y - 0.5, offsetVec.z - 0.5 + offset.z); - } - - return vecs; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/ClientProxy.java b/src/main/java/com/silvaniastudios/roads/client/ClientProxy.java deleted file mode 100644 index c9f2efaa..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/ClientProxy.java +++ /dev/null @@ -1,229 +0,0 @@ -package com.silvaniastudios.roads.client; - -import com.silvaniastudios.roads.CommonProxy; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.customs.CustomPaintBlock; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherEntity; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.hopper.PaintFillerHopperEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenEntity; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryEntity; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterEntity; -import com.silvaniastudios.roads.client.gui.paintgun.GuiPaintGun; -import com.silvaniastudios.roads.client.model.CrusherRenderer; -import com.silvaniastudios.roads.client.model.ModelBakeHandler; -import com.silvaniastudios.roads.client.model.PaintFillerHopperRenderer; -import com.silvaniastudios.roads.client.model.PaintFillerRenderer; -import com.silvaniastudios.roads.client.model.PaintOvenRenderer; -import com.silvaniastudios.roads.client.model.RoadFactoryRenderer; -import com.silvaniastudios.roads.client.model.TarDistillerRenderer; -import com.silvaniastudios.roads.client.model.TarmacCutterRenderer; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal11MirrorModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal11ModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal12MirrorModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal12ModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal14MirrorModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal14ModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal18MirrorModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal18ModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal24MirrorModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal24ModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal28MirrorModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal28ModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal38MirrorModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal38ModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal48MirrorModelLoader; -import com.silvaniastudios.roads.client.model.diagonal.loaders.Diagonal48ModelLoader; -import com.silvaniastudios.roads.client.model.paint.loaders.customs.*; -import com.silvaniastudios.roads.client.model.paint.loaders.CustomPaintModelLoader; -import com.silvaniastudios.roads.client.model.paint.loaders.PaintLoaderBase; -import com.silvaniastudios.roads.client.model.paint.loaders.lines.*; - -import com.silvaniastudios.roads.registries.DynamicBlockRegistry; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.item.Item; -import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.client.model.ModelLoaderRegistry; -import net.minecraftforge.common.MinecraftForge; -import net.minecraftforge.fml.client.registry.ClientRegistry; - -public class ClientProxy extends CommonProxy { - - @Override - public void registerItemRenderer(Item item, int meta, String id) { - ModelLoader.setCustomModelResourceLocation(item, meta, new ModelResourceLocation(FurenikusRoads.MODID + ":" + id, "inventory")); - } - - @Override - public void preInit() { - MinecraftForge.EVENT_BUS.register(ModelBakeHandler.instance); - MinecraftForge.EVENT_BUS.register(TextureRegistryHandler.instance); - - ModelLoaderRegistry.registerLoader(new Diagonal11ModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal12ModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal14ModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal24ModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal18ModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal28ModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal38ModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal48ModelLoader()); - - ModelLoaderRegistry.registerLoader(new Diagonal11MirrorModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal12MirrorModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal14MirrorModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal24MirrorModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal18MirrorModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal28MirrorModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal38MirrorModelLoader()); - ModelLoaderRegistry.registerLoader(new Diagonal48MirrorModelLoader()); - - //custom paints - for (int i = 0; i < DynamicBlockRegistry.customPaints.size(); i++) { - CustomPaintBlock block = DynamicBlockRegistry.customPaints.get(i); - String name = block.getRegistryName().toString().replace("furenikusroads:", ""); - - switch (block.getPaintType()) { - case ICON_1x1: - ModelLoaderRegistry.registerLoader(new CustomPaintModelLoader(name, new CustomPaintModel())); - break; - case WALL_ICON_1x1: - ModelLoaderRegistry.registerLoader(new CustomPaintModelLoader(name, new CustomWallPaintModel())); - break; - case MULTI_2x1: - ModelLoaderRegistry.registerLoader(new CustomPaintModelLoader(name, new CustomPaint2x1Model())); - break; - case MULTI_3x1: - ModelLoaderRegistry.registerLoader(new CustomPaintModelLoader(name, new CustomPaint3x1Model())); - break; - case MULTI_4x1: - ModelLoaderRegistry.registerLoader(new CustomPaintModelLoader(name, new CustomPaint4x1Model())); - break; - case LARGE_TEXT: - ModelLoaderRegistry.registerLoader(new CustomPaintModelLoader(name, new CustomMetaPaintModel())); - break; - } - } - - //other paints - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineModel(), "line_", "_straight_full"));//LineStraightFullModelLoader()); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineDoubleModel(), "line_", "_straight_double"));//LineStraightDoubleModelLoader()); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineThickModel(), "line_", "_straight_thick"));//LineStraightThickModelLoader()); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineDoubleThickModel(), "line_", "_straight_double_thick"));//LineStraightDoubleThickModelLoader()); - - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineSideDoubleModel(), "line_", "_side_double"));//new LineSideDoubleModelLoader()); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineSideDoubleThickModel(), "line_", "_side_double_thick"));//new LineSideDoubleThickModelLoader()); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineSideSingleModel(), "line_", "_side_single"));//new LineSideSingleModelLoader()); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineSideSingleThickModel(), "line_", "_side_single_thick"));//new LineSideSingleThickModelLoader()); - - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineFarSideModel(), "line_", "_far_side"));//new LineFarSideModelLoader()); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineFarSideThickModel(), "line_", "_far_side_thick"));//new LineFarSideThickModelLoader()); - - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineMiddleHalfDoubleModel(), "line_", "_middle_half_double")); //line_middle_half_double - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineMiddleDashDoubleModel(), "line_", "_middle_dash_double")); //line_middle_dash_double - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineMiddleShortModel(), "line_", "_middle_short")); //line_middle_short - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineFilterLaneModel(), "line_", "_filter_lane")); //line_filter_lane - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineSideShortModel(), "line_", "_side_short")); //line_side_short - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new PaintLineThinCrossingModel(), "line_", "_thin_crossing")); //line_thin_crossing - - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomPaintModel(), "", "_wheelchair_icon")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomPaintModel(), "", "_chevron")); - - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomPaint2x1Model(), "", "_pedestrian")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomPaint2x1Model(), "", "_merge_arrow")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomPaint2x1Model(), "", "_give_way")); - - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomPaint4x1Model(), "line_", "_crossing_diagonal")); - - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomPaint4x1Model(), "", "_junction_fork_mid")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomPaint4x1Model(), "", "_junction_fork_mid_thin")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomPaint4x1Model(), "", "_junction_fork_chevron_mid")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomPaint4x1Model(), "", "_junction_fork_chevron_mid_thin")); - - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_chevron_mid")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_chevron_mid_left")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_chevron_mid_right")); - - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_slow")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_stop")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_bike")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_bus")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_taxi")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_lane")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_keep")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_clear")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_turn")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_left")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_right")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_only")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_no")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_entry")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_bike_icon")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_town")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_city")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_ctre")); - - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_junction_side_line_connection")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_junction_side_line_connection_thin")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_junction_side_line_connection_thick_thick")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_junction_mid_line_connection")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_junction_a")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomMetaPaintModel(), "", "_junction_b")); - - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_ab")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_cd")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_ef")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_gh")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_ij")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_kl")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_mn")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_op")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_qr")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_st")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_uv")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_wx")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_yz")); - - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_01")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_23")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_45")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_67")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_89")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_punct_question_exclamation")); - ModelLoaderRegistry.registerLoader(new PaintLoaderBase(new CustomWallPaintModel(), "paint_letter_", "_punct_hash_slash")); - } - - @Override - public void init() { - super.init(); - Minecraft.getMinecraft().getBlockColors().registerBlockColorHandler(new ModBlockColours(), FRBlocks.road_block_grass); - Minecraft.getMinecraft().getItemColors().registerItemColorHandler(new ModItemColours(), FRBlocks.road_block_grass); - - MinecraftForge.EVENT_BUS.register(BoundingBoxDraw.class); - - if (!RoadsConfig.general.performanceMode) { - ClientRegistry.bindTileEntitySpecialRenderer(PaintFillerEntity.class, new PaintFillerRenderer()); - ClientRegistry.bindTileEntitySpecialRenderer(TarDistillerEntity.class, new TarDistillerRenderer()); - ClientRegistry.bindTileEntitySpecialRenderer(RoadFactoryEntity.class, new RoadFactoryRenderer()); - ClientRegistry.bindTileEntitySpecialRenderer(CrusherEntity.class, new CrusherRenderer()); - ClientRegistry.bindTileEntitySpecialRenderer(TarmacCutterEntity.class, new TarmacCutterRenderer()); - - - ClientRegistry.bindTileEntitySpecialRenderer(PaintOvenEntity.class, new PaintOvenRenderer()); - } - ClientRegistry.bindTileEntitySpecialRenderer(PaintFillerHopperEntity.class, new PaintFillerHopperRenderer()); //Has actual utilisation in the renderer so needs to always be enabled - } - - public void postInit() { - super.postInit(); - FRBlocks.registerClientItemModels(); - } - - @Override - public void openGui(int guiId) { - if (guiId == 0) { Minecraft.getMinecraft().displayGuiScreen(new GuiPaintGun()); } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/ModBlockColours.java b/src/main/java/com/silvaniastudios/roads/client/ModBlockColours.java deleted file mode 100644 index 1a40d4d3..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/ModBlockColours.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.silvaniastudios.roads.client; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.color.IBlockColor; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.IBlockAccess; - -public class ModBlockColours implements IBlockColor { - - @Override - public int colorMultiplier(IBlockState state, IBlockAccess worldIn, BlockPos pos, int tintIndex) { - return worldIn.getBiome(pos).getGrassColorAtPos(pos); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/ModItemColours.java b/src/main/java/com/silvaniastudios/roads/client/ModItemColours.java deleted file mode 100644 index 21c88108..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/ModItemColours.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.silvaniastudios.roads.client; - -import net.minecraft.client.renderer.color.IItemColor; -import net.minecraft.item.ItemStack; -import net.minecraft.world.ColorizerGrass; - -public class ModItemColours implements IItemColor { - - @Override - public int colorMultiplier(ItemStack stack, int tintIndex) { - return ColorizerGrass.getGrassColor(0.5, 0.5); - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/TextureRegistryHandler.java b/src/main/java/com/silvaniastudios/roads/client/TextureRegistryHandler.java deleted file mode 100644 index 6710e64b..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/TextureRegistryHandler.java +++ /dev/null @@ -1,301 +0,0 @@ -package com.silvaniastudios.roads.client; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.diagonal.ShapeLibrary; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.PaintBlockCustomRenderBase; -import com.silvaniastudios.roads.registries.PaintCategoryList; -import com.silvaniastudios.roads.registries.PaintGunItemRegistry; - -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.event.TextureStitchEvent; -import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; - -import javax.imageio.ImageIO; -import java.awt.image.BufferedImage; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.util.ArrayList; - -public class TextureRegistryHandler { - - public static final TextureRegistryHandler instance = new TextureRegistryHandler(); - - private TextureRegistryHandler() {}; - - @SubscribeEvent - public void stitcherEventPre(TextureStitchEvent.Pre event) { - ResourceLocation white_paint = new ResourceLocation(FurenikusRoads.MODID + ":items/paint_white"); - ResourceLocation yellow_paint = new ResourceLocation(FurenikusRoads.MODID + ":items/paint_yellow"); - ResourceLocation red_paint = new ResourceLocation(FurenikusRoads.MODID + ":items/paint_red"); - - ResourceLocation block_white_paint = new ResourceLocation(FurenikusRoads.MODID + ":blocks/paint_white"); - ResourceLocation block_yellow_paint = new ResourceLocation(FurenikusRoads.MODID + ":blocks/paint_yellow"); - ResourceLocation block_red_paint = new ResourceLocation(FurenikusRoads.MODID + ":blocks/paint_red"); - - ResourceLocation tar_flowing = new ResourceLocation(FurenikusRoads.MODID + ":fluids/tar_flowing"); - ResourceLocation tar_still = new ResourceLocation(FurenikusRoads.MODID + ":fluids/tar_still"); - ResourceLocation white_paint_flowing = new ResourceLocation(FurenikusRoads.MODID + ":fluids/white_paint_flowing"); - ResourceLocation white_paint_still = new ResourceLocation(FurenikusRoads.MODID + ":fluids/white_paint_still"); - ResourceLocation yellow_paint_flowing = new ResourceLocation(FurenikusRoads.MODID + ":fluids/yellow_paint_flowing"); - ResourceLocation yellow_paint_still = new ResourceLocation(FurenikusRoads.MODID + ":fluids/yellow_paint_still"); - ResourceLocation red_paint_flowing = new ResourceLocation(FurenikusRoads.MODID + ":fluids/red_paint_flowing"); - ResourceLocation red_paint_still = new ResourceLocation(FurenikusRoads.MODID + ":fluids/red_paint_still"); - - ResourceLocation cats_eye_white = new ResourceLocation(FurenikusRoads.MODID + ":blocks/cats_eye_white"); - ResourceLocation cats_eye_yellow = new ResourceLocation(FurenikusRoads.MODID + ":blocks/cats_eye_yellow"); - ResourceLocation cats_eye_red = new ResourceLocation(FurenikusRoads.MODID + ":blocks/cats_eye_red"); - ResourceLocation cats_eye_green = new ResourceLocation(FurenikusRoads.MODID + ":blocks/cats_eye_green"); - ResourceLocation cats_eye_blue = new ResourceLocation(FurenikusRoads.MODID + ":blocks/cats_eye_blue"); - - ResourceLocation machine_vent_on = new ResourceLocation(FurenikusRoads.MODID + ":blocks/machine_vent_back_on"); - ResourceLocation paint_filler_display = new ResourceLocation(FurenikusRoads.MODID + ":blocks/paint_filler_machine_display"); - - ResourceLocation sprite_white_paint = new ResourceLocation(FurenikusRoads.MODID + ":fluids/white_paint_flowing"); - ResourceLocation sprite_yellow_paint = new ResourceLocation(FurenikusRoads.MODID + ":fluids/yellow_paint_flowing"); - ResourceLocation sprite_red_paint = new ResourceLocation(FurenikusRoads.MODID + ":fluids/red_paint_flowing"); - - ResourceLocation sprite_glass = new ResourceLocation(FurenikusRoads.MODID + ":blocks/hopper_tank"); - ResourceLocation sprite_glass_top = new ResourceLocation(FurenikusRoads.MODID + ":blocks/hopper_tank_top"); - - ResourceLocation sprite_light_white = new ResourceLocation(FurenikusRoads.MODID + ":blocks/hopper_type_white"); - ResourceLocation sprite_light_yellow = new ResourceLocation(FurenikusRoads.MODID + ":blocks/hopper_type_yellow"); - ResourceLocation sprite_light_red = new ResourceLocation(FurenikusRoads.MODID + ":blocks/hopper_type_red"); - ResourceLocation sprite_light_item = new ResourceLocation(FurenikusRoads.MODID + ":blocks/hopper_type_item"); - ResourceLocation sprite_light_none = new ResourceLocation(FurenikusRoads.MODID + ":blocks/hopper_type_none"); - - //Non-custom rendering paints which need icons registering - ResourceLocation junction_filter_left = new ResourceLocation(FurenikusRoads.MODID + ":paints/junction_filter_left_0"); - ResourceLocation junction_filter_left_empty = new ResourceLocation(FurenikusRoads.MODID + ":paints/junction_filter_left_empty_0"); - ResourceLocation junction_filter_left_thin = new ResourceLocation(FurenikusRoads.MODID + ":paints/junction_filter_left_thin_0"); - ResourceLocation junction_filter_right = new ResourceLocation(FurenikusRoads.MODID + ":paints/junction_filter_right_0"); - ResourceLocation junction_filter_right_empty = new ResourceLocation(FurenikusRoads.MODID + ":paints/junction_filter_right_empty_0"); - ResourceLocation junction_filter_right_thin = new ResourceLocation(FurenikusRoads.MODID + ":paints/junction_filter_right_thin_0"); - - ResourceLocation chevron_left_a = new ResourceLocation(FurenikusRoads.MODID + ":paints/chevron_left_a_0"); - ResourceLocation chevron_left_a_thin = new ResourceLocation(FurenikusRoads.MODID + ":paints/chevron_left_a_thin_0"); - ResourceLocation chevron_right_a = new ResourceLocation(FurenikusRoads.MODID + ":paints/chevron_right_a_0"); - ResourceLocation chevron_right_a_thin = new ResourceLocation(FurenikusRoads.MODID + ":paints/chevron_right_a_thin_0"); - ResourceLocation chevron_side_line = new ResourceLocation(FurenikusRoads.MODID + ":paints/chevron_side_line_0"); - - ResourceLocation hatch_box = new ResourceLocation(FurenikusRoads.MODID + ":paints/hatch_box_0"); - ResourceLocation crossing_paint = new ResourceLocation(FurenikusRoads.MODID + ":paints/crossing_paint_0"); - ResourceLocation arrow_0 = new ResourceLocation(FurenikusRoads.MODID + ":paints/arrow_0"); - ResourceLocation arrow_4 = new ResourceLocation(FurenikusRoads.MODID + ":paints/arrow_4"); - ResourceLocation arrow_line = new ResourceLocation(FurenikusRoads.MODID + ":paints/arrow_line_0"); - ResourceLocation arrow_diagonal_0 = new ResourceLocation(FurenikusRoads.MODID + ":paints/arrow_diagonal_0"); - ResourceLocation arrow_diagonal_4 = new ResourceLocation(FurenikusRoads.MODID + ":paints/arrow_diagonal_4"); - - event.getMap().registerSprite(white_paint); - event.getMap().registerSprite(yellow_paint); - event.getMap().registerSprite(red_paint); - - event.getMap().registerSprite(block_white_paint); - event.getMap().registerSprite(block_yellow_paint); - event.getMap().registerSprite(block_red_paint); - - event.getMap().registerSprite(tar_flowing); - event.getMap().registerSprite(tar_still); - event.getMap().registerSprite(white_paint_flowing); - event.getMap().registerSprite(white_paint_still); - event.getMap().registerSprite(yellow_paint_flowing); - event.getMap().registerSprite(yellow_paint_still); - event.getMap().registerSprite(red_paint_flowing); - event.getMap().registerSprite(red_paint_still); - - event.getMap().registerSprite(cats_eye_white); - event.getMap().registerSprite(cats_eye_yellow); - event.getMap().registerSprite(cats_eye_red); - event.getMap().registerSprite(cats_eye_green); - event.getMap().registerSprite(cats_eye_blue); - - event.getMap().registerSprite(machine_vent_on); - event.getMap().registerSprite(paint_filler_display); - - event.getMap().registerSprite(sprite_white_paint); - event.getMap().registerSprite(sprite_yellow_paint); - event.getMap().registerSprite(sprite_red_paint); - - event.getMap().registerSprite(sprite_glass); - event.getMap().registerSprite(sprite_glass_top); - - event.getMap().registerSprite(sprite_light_white); - event.getMap().registerSprite(sprite_light_yellow); - event.getMap().registerSprite(sprite_light_red); - event.getMap().registerSprite(sprite_light_item); - event.getMap().registerSprite(sprite_light_none); - - event.getMap().registerSprite(junction_filter_left); - event.getMap().registerSprite(junction_filter_left_empty); - event.getMap().registerSprite(junction_filter_left_thin); - event.getMap().registerSprite(junction_filter_right); - event.getMap().registerSprite(junction_filter_right_empty); - event.getMap().registerSprite(junction_filter_right_thin); - - event.getMap().registerSprite(chevron_left_a); - event.getMap().registerSprite(chevron_left_a_thin); - event.getMap().registerSprite(chevron_right_a); - event.getMap().registerSprite(chevron_right_a_thin); - event.getMap().registerSprite(chevron_side_line); - - event.getMap().registerSprite(hatch_box); - event.getMap().registerSprite(crossing_paint); - event.getMap().registerSprite(arrow_0); - event.getMap().registerSprite(arrow_4); - event.getMap().registerSprite(arrow_line); - event.getMap().registerSprite(arrow_diagonal_0); - event.getMap().registerSprite(arrow_diagonal_4); - - for (int i = 0; i < PaintGunItemRegistry.categoryList.size(); i++) { - PaintCategoryList category = PaintGunItemRegistry.categoryList.get(i); - for (int j = 0; j < category.size(); j++) { - PaintBlockBase block = category.getPaint(j); - String name = block.getUnlocalizedName().substring(20); //tile.furenikusroads: ... - if (category.getMeta(j) > 0) { name = name + "_" + category.getMeta(j); } - ResourceLocation sprite = new ResourceLocation(FurenikusRoads.MODID + ":items/paint_gun_display/" + name); - event.getMap().registerSprite(sprite); - } - } - } - - @SubscribeEvent - public void paintTextures(TextureStitchEvent.Pre event) { - ArrayList paints = FRBlocks.paintBlockList; - ArrayList registry = new ArrayList<>(); - - if (FurenikusRoads.genInternalTextures) { - FurenikusRoads.debug(0, "Generating internal texture set is enabled. If you're seeing this spammed, and this isn't a dev build, please tell me coz I forgot to turn it off!!"); - for (int j = 0; j < FRBlocks.genTexturesList.size(); j++) { - try { - ShapeLibrary.getImageFromGrid(""+j, FRBlocks.genTexturesList.get(j), 0); - } catch (IOException e) { - throw new RuntimeException(e); - } - } - } - - for (int i = 0; i < paints.size(); i++) { - if (paints.get(i) instanceof PaintBlockCustomRenderBase) { - PaintBlockCustomRenderBase paint = (PaintBlockCustomRenderBase) paints.get(i); - if (paint.getUnlocalizedName().contains("white")) { - for (int j = 0; j < paint.getCoreMetas().length; j++) { - registry.add(getTextureNameFromUnloc(paint.getUnlocalizedName()) + "_" + paint.getCoreMetas()[j]); - } - } - } - } - - for (int i = 0; i < registry.size(); i++) { - ResourceLocation rl = new ResourceLocation(FurenikusRoads.MODID + ":paints/" + registry.get(i)); - event.getMap().registerSprite(rl); - } - } - - public static void generateJSONFromTextures() { - FurenikusRoads.debug(0, "Generating JSONs from textures!"); - ArrayList imageList = new ArrayList<>(); - String directory = "./conversions/"; - imageList = getImagesToConvert(directory, imageList); - FurenikusRoads.debug(0, "Found " + imageList.size() + " textures to process."); - - for (int i = 0; i < imageList.size(); i++) { - generatePixelArray(directory, getImage(imageList.get(i)), imageList.get(i).getName()); - } - - FurenikusRoads.debug(0, "Generation complete."); - } - - private static ArrayList getImagesToConvert(String dir, ArrayList imageList) { - File directory = new File(dir); - - if (!directory.exists()) { - directory.mkdir(); - } - - File[] files = directory.listFiles(); - - for (File file : files) { - if (file.isFile() && file.getName().endsWith(".png")) { - imageList.add(file); - } else if (file.isDirectory()) { - getImagesToConvert(file.getAbsolutePath(), imageList); - } - } - - return imageList; - } - - private static BufferedImage getImage(File file) { - BufferedImage img = null; - try { - img = ImageIO.read(file); - } catch (IOException e) { - throw new RuntimeException(e); - } - return img; - } - - //ChatGPT made this. Thanks ChatGPT. - public static int[][] generatePixelArray(String dir, BufferedImage image, String name) { - int width = image.getWidth(); - int height = image.getHeight(); - int[][] pixelArray = new int[width][height]; - - for (int x = 0; x < width; x++) { - for (int y = 0; y < height; y++) { - int pixel = image.getRGB(x, y); - int alpha = (pixel >> 24) & 0xff; - if (alpha <= 63) { // transparent pixel - pixelArray[y][x] = 0; - } else { // opaque pixel - pixelArray[y][x] = 1; - } - } - } - - FurenikusRoads.debug(0, "Generating text file for image size " + width + ", " + height); - try { - int rowCount = 0; - int colCount = 0; - FileWriter writer = new FileWriter(dir + name.replace(".png", ".json")); - writer.write("{\n"); - writer.write(" \"grid\":[\n"); - for (int[] row : pixelArray) { - writer.write(" ["); - rowCount++; - for (int pixel : row) { - colCount++; - if (colCount < row.length) { - writer.write(pixel + ","); - } else { - writer.write(""+pixel); - } - } - colCount = 0; - if (rowCount < pixelArray.length) { - writer.write("],\n"); - } else { - writer.write("]\n"); - } - } - writer.write(" ]\n"); - writer.write("}"); - writer.close(); - } catch (IOException e) { - System.err.println("Error writing pixel array to file: " + e.getMessage()); - } - - return pixelArray; - } - - /** - * Only for use on white paints. Doesn't check/verify the colours. - * @param unlocalizedName the unlocalized name of the block - * @return the same string, without the tile.furenikusroads. bit and without white_ - */ - public static String getTextureNameFromUnloc(String unlocalizedName) { - return unlocalizedName.replace("white_", "").replace("tile.furenikusroads.", ""); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/FabricatorRecipeList.java b/src/main/java/com/silvaniastudios/roads/client/gui/FabricatorRecipeList.java deleted file mode 100644 index 1bbc3201..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/FabricatorRecipeList.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.silvaniastudios.roads.client.gui; - -import java.util.ArrayList; - -import org.lwjgl.opengl.GL11; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorEntity; -import com.silvaniastudios.roads.blocks.tileentities.recipes.FabricatorRecipes; -import com.silvaniastudios.roads.blocks.tileentities.recipes.RecipeRegistry; -import com.silvaniastudios.roads.network.FabricatorUpdatePacket; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.FontRenderer; -import net.minecraft.client.gui.GuiScreen; -import net.minecraft.client.renderer.GlStateManager; -import net.minecraft.client.renderer.RenderHelper; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; - -public class FabricatorRecipeList extends GuiScrollingList_Mod { - - private FontRenderer fontRenderer; - private Minecraft client; - private GuiScreen gui; - private FabricatorEntity te; - - - private static final ResourceLocation TEXTURE_WIDGET = new ResourceLocation(FurenikusRoads.MODID, "textures/gui/fabricator_list.png"); - - public FabricatorRecipeList(int width, int height, int top, int left, int entryHeight, int screenWidth, int screenHeight, FontRenderer font, Minecraft mc, GuiScreen gui, FabricatorEntity te, ArrayList tooltipList) { - super(mc, width, height, top, height+top, left, entryHeight, screenWidth, screenHeight, tooltipList); - this.fontRenderer = font; - this.client = mc; - this.gui = gui; - this.te = te; - } - - @Override - protected int getSize() { - return RecipeRegistry.fabricatorRecipes.size(); - } - - @Override - protected void elementClicked(int index, boolean doubleClick) { - int recipeId = RecipeRegistry.fabricatorRecipes.get(index).getId(); //will *almost* always be the same as index, but not 100% certainty. - FurenikusRoads.PACKET_CHANNEL.sendToServer(new FabricatorUpdatePacket(recipeId, te.getPos().getX(), te.getPos().getY(), te.getPos().getZ())); - } - - @Override protected boolean isSelected(int index) { return false; } - @Override protected void drawBackground() {} - - @Override - protected void drawSlot(int slotIdx, int entryRight, int slotTop, int slotBuffer, Tessellator tess) { - GL11.glDisable(GL11.GL_LIGHTING); - GL11.glDisable(GL11.GL_FOG); - GL11.glColor4f(1,1,1,1); - - int left = entryRight - this.listWidth + 7; - - FabricatorRecipes recipe = RecipeRegistry.fabricatorRecipes.get(slotIdx); - - ItemStack in1 = recipe.getInput1(); - ItemStack in2 = recipe.getInput2(); - ItemStack in3 = recipe.getInput3(); - ItemStack in4 = recipe.getInput4(); - ItemStack in5 = recipe.getInput5(); - ItemStack in6 = recipe.getInput6(); - - ItemStack output = RecipeRegistry.fabricatorRecipes.get(slotIdx).getOutput(); - - - - this.client.getTextureManager().bindTexture(TEXTURE_WIDGET); - gui.drawTexturedModalRect(left, slotTop, 0, 0, 140, 28); - gui.drawTexturedModalRect(left + 140, slotTop, 62, 0, 194, 28); - - fontRenderer.drawString("" + output.getDisplayName(), left + 25, slotTop + 10, 0x404040); - - drawItemStack(fontRenderer, output, left + 6, slotTop + 6); - - if (in1 != ItemStack.EMPTY) { drawItemStack(fontRenderer, in1, left + 222, slotTop + 6); } - if (in2 != ItemStack.EMPTY) { drawItemStack(fontRenderer, in2, left + 240, slotTop + 6); } - if (in3 != ItemStack.EMPTY) { drawItemStack(fontRenderer, in3, left + 258, slotTop + 6); } - if (in4 != ItemStack.EMPTY) { drawItemStack(fontRenderer, in4, left + 276, slotTop + 6); } - if (in5 != ItemStack.EMPTY) { drawItemStack(fontRenderer, in5, left + 294, slotTop + 6); } - if (in6 != ItemStack.EMPTY) { drawItemStack(fontRenderer, in6, left + 312, slotTop + 6); } - - if (mouseX >= left + 1 && mouseX <= entryRight && mouseY >= slotTop && mouseY <= slotTop + 27) { - createTooltip(slotIdx, recipe); - } - } - - protected void createTooltip(int slotId, FabricatorRecipes recipe) { - if (!recipe.getOutput().isEmpty()) { - - tooltipList.add(recipe.getOutput().getCount() + "x " + recipe.getOutput().getDisplayName()); - - if (recipe.getInput1() != ItemStack.EMPTY) { tooltipList.add("Slot 1: " + recipe.getInput1().getCount() + "x " + recipe.getInput1().getDisplayName()); } - if (recipe.getInput2() != ItemStack.EMPTY) { tooltipList.add("Slot 2: " + recipe.getInput2().getCount() + "x " + recipe.getInput2().getDisplayName()); } - if (recipe.getInput3() != ItemStack.EMPTY) { tooltipList.add("Slot 3: " + recipe.getInput3().getCount() + "x " + recipe.getInput3().getDisplayName()); } - if (recipe.getInput4() != ItemStack.EMPTY) { tooltipList.add("Slot 4: " + recipe.getInput4().getCount() + "x " + recipe.getInput4().getDisplayName()); } - if (recipe.getInput5() != ItemStack.EMPTY) { tooltipList.add("Slot 5: " + recipe.getInput5().getCount() + "x " + recipe.getInput5().getDisplayName()); } - if (recipe.getInput6() != ItemStack.EMPTY) { tooltipList.add("Slot 6: " + recipe.getInput6().getCount() + "x " + recipe.getInput6().getDisplayName()); } - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/GuiCompactor.java b/src/main/java/com/silvaniastudios/roads/client/gui/GuiCompactor.java deleted file mode 100644 index 0a7f9c40..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/GuiCompactor.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.silvaniastudios.roads.client.gui; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorContainer; -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorEntity; -import com.silvaniastudios.roads.network.CompactorUpdatePacket; - -import net.minecraft.client.gui.GuiButton; -import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.client.renderer.GlStateManager; -import net.minecraft.client.resources.I18n; -import net.minecraft.util.ResourceLocation; - -public class GuiCompactor extends GuiContainer { - - private static final ResourceLocation guiTextures = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/compactor.png"); - private CompactorEntity tileEntity; - private boolean electric; - - GuiButton increase; - GuiButton decrease; - - public GuiCompactor(CompactorEntity tileEntity, CompactorContainer container, boolean electric) { - super(container); - xSize = 176; - ySize = 146; - this.tileEntity = tileEntity; - this.electric = electric; - } - - public void initGui() { - super.initGui(); - int guiLeft = (width - xSize) / 2; - int guiTop = (height - ySize) / 2; - - increase = new GuiButton(0, guiLeft + 91, guiTop + 30, 20, 20, "+"); - decrease = new GuiButton(1, guiLeft + 43, guiTop + 30, 20, 20, "-"); - - buttonList.add(increase); - buttonList.add(decrease); - } - - @Override - public void drawScreen(int mouseX, int mouseY, float partialTicks) { - this.drawDefaultBackground(); - super.drawScreen(mouseX, mouseY, partialTicks); - this.renderHoveredToolTip(mouseX, mouseY); - } - - @Override - protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) { - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - - drawTooltip(2, left, top, mouseX, mouseY); - if (electric) { - fontRenderer.drawString(I18n.format("roads.gui.compactor_electric.name"), 6, 6, 4210752); - } else { - fontRenderer.drawString(I18n.format("roads.gui.compactor.name"), 6, 6, 4210752); - } - - String str = "" + (tileEntity.road_size+1); - - fontRenderer.drawString(str, 77-(fontRenderer.getStringWidth(str)/2), 36, 4210752); - } - - private void drawTooltip(int col, int left, int top, int mouseX, int mouseY) { - if (electric) { - CompactorElectricEntity cee = (CompactorElectricEntity) tileEntity; - if (mouseX >= (left + 155) && mouseX <= (left + 169) && mouseY >= (top + 7) && mouseY <= (top + 49)) { this.drawHoveringText(cee.energy.getEnergyStored() + "/" + cee.energy.getMaxEnergyStored(), mouseX - left, mouseY - top + 15); } - } else { - if (mouseX >= (left + 153) && mouseX <= (left + 167) && mouseY >= (top + 15) && mouseY <= (top + 29)) { this.drawHoveringText(tileEntity.fuel_remaining + "/" + tileEntity.last_fuel_cap, mouseX - left, mouseY - top + 15); } - } - - if (RoadsConfig.general.guiGuide) { - if (mouseX >= (left + 8) && mouseX <= (left + 24) && mouseY >= (top + 32) && mouseY <= (top + 48) && tileEntity.inventory.getStackInSlot(CompactorContainer.FRAGMENTS).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.compactor.fragmentSlot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 130) && mouseX <= (left + 146) && mouseY >= (top + 32) && mouseY <= (top + 48) && tileEntity.inventory.getStackInSlot(CompactorContainer.ROADS).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.outputSlot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 152) && mouseX <= (left + 168) && mouseY >= (top + 32) && mouseY <= (top + 48) && tileEntity.inventory.getStackInSlot(CompactorContainer.FUEL).getCount() == 0 && !electric) { this.drawHoveringText(I18n.format("roads.gui.fuelSlot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 63) && mouseX <= (left + 90) && mouseY >= (top + 30) && mouseY <= (top + 59)) { this.drawHoveringText(I18n.format("roads.gui.compactor.size"), mouseX - left, mouseY - top + 15); } - } - } - - @Override - protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) { - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - mc.getTextureManager().bindTexture(guiTextures); - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - - drawTexturedModalRect(left, top, 0, 0, xSize, ySize); - if (electric) { - drawTexturedModalRect(left+xSize-25, top, 176, 0, 25, ySize); - } - - drawFuel(left, top); - drawProgress(left, top); - } - - private void drawFuel(int left, int top) { - if (electric) { - CompactorElectricEntity cee = (CompactorElectricEntity) tileEntity; - int p = getPercentage(cee.energy.getEnergyStored(), cee.energy.getMaxEnergyStored()); - int x = Math.round(p / 2.5F); - if (p == 100) { x = 42; } - drawTexturedModalRect(left + 155, top + 7 + (42-x), 242, 42-x, 14, x); - } else { - int p = getPercentage(tileEntity.fuel_remaining, tileEntity.last_fuel_cap); - int x = Math.round(p / 7.0F); - drawTexturedModalRect(left + 153, top + 15 + (14-x), 229, 14-x, 13, x); - } - } - - private void drawProgress(int left, int top) { - int p = getPercentage(tileEntity.timerCount, electric ? RoadsConfig.machine.electricCompactorTickRate : RoadsConfig.machine.compactorTickRate); - int x = Math.round(p * 1.6F); - drawTexturedModalRect(left + 8, top + 54, 0, 252, x, 4); - } - - private int getPercentage(int num, int max) { - float x = (float) num / (float) max; - int y = Math.round(x*100); - if (y > 100) { return 100; } - return y; - } - - @Override - protected void actionPerformed(GuiButton button) { - if (button == increase) { - FurenikusRoads.PACKET_CHANNEL.sendToServer(new CompactorUpdatePacket(1)); - } - if (button == decrease) { - FurenikusRoads.PACKET_CHANNEL.sendToServer(new CompactorUpdatePacket(-1)); - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/GuiCrusher.java b/src/main/java/com/silvaniastudios/roads/client/gui/GuiCrusher.java deleted file mode 100644 index 3dd13c5f..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/GuiCrusher.java +++ /dev/null @@ -1,127 +0,0 @@ -package com.silvaniastudios.roads.client.gui; - -import java.util.Arrays; -import java.util.List; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherContainer; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherEntity; -import com.silvaniastudios.roads.items.FRItems; - -import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.client.renderer.GlStateManager; -import net.minecraft.client.resources.I18n; -import net.minecraft.init.Blocks; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.text.TextFormatting; - -public class GuiCrusher extends GuiContainer { - - private static final ResourceLocation guiTextures = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/crusher.png"); - private CrusherEntity tileEntity; - private boolean electric; - - public GuiCrusher(CrusherEntity tileEntity, CrusherContainer container, boolean electric) { - super(container); - xSize = 176; - ySize = 146; - this.tileEntity = tileEntity; - this.electric = electric; - } - - @Override - public void drawScreen(int mouseX, int mouseY, float partialTicks) { - this.drawDefaultBackground(); - super.drawScreen(mouseX, mouseY, partialTicks); - this.renderHoveredToolTip(mouseX, mouseY); - } - - @Override - protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) { - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - - drawTooltip(2, left, top, mouseX, mouseY); - if (electric) { - fontRenderer.drawString(I18n.format("roads.gui.electric_crusher.name"), 6, 6, 4210752); - } else { - fontRenderer.drawString(I18n.format("roads.gui.crusher.name"), 6, 6, 4210752); - } - } - - private void drawTooltip(int col, int left, int top, int mouseX, int mouseY) { - if (electric) { - CrusherElectricEntity cee = (CrusherElectricEntity) tileEntity; - if (mouseX >= (left + 155) && mouseX <= (left + 169) && mouseY >= (top + 7) && mouseY <= (top + 49)) { this.drawHoveringText(cee.energy.getEnergyStored() + "/" + cee.energy.getMaxEnergyStored(), mouseX - left, mouseY - top + 15); } - } else { - if (mouseX >= (left + 153) && mouseX <= (left + 167) && mouseY >= (top + 15) && mouseY <= (top + 29)) { this.drawHoveringText(tileEntity.fuel_remaining + "/" + tileEntity.last_fuel_cap, mouseX - left, mouseY - top + 15); } - } - - if (RoadsConfig.general.guiGuide) { - String a = TextFormatting.RESET + " -> " + TextFormatting.GREEN; - List list = Arrays.asList( - I18n.format("roads.gui.inputSlot"), - "", - TextFormatting.UNDERLINE + I18n.format("roads.gui.valid"), - TextFormatting.AQUA + Blocks.STONE.getLocalizedName() + a + Blocks.COBBLESTONE.getLocalizedName(), - TextFormatting.AQUA + Blocks.COBBLESTONE.getLocalizedName() + a + Blocks.GRAVEL.getLocalizedName(), - TextFormatting.AQUA + Blocks.GRAVEL.getLocalizedName() + a + new ItemStack(FRBlocks.generic_blocks, 1, 0).getDisplayName(), - TextFormatting.AQUA + new ItemStack(FRBlocks.generic_blocks, 1, 0).getDisplayName() + a + Blocks.SAND.getLocalizedName(), - TextFormatting.AQUA + new ItemStack(FRBlocks.generic_blocks, 1, 1).getDisplayName() + a + new ItemStack(FRItems.clinker_mix).getDisplayName(), - TextFormatting.AQUA + new ItemStack(FRBlocks.generic_blocks, 1, 2).getDisplayName() + a + new ItemStack(FRItems.cement_dust).getDisplayName(), - TextFormatting.AQUA + new ItemStack(FRBlocks.generic_blocks, 1, 3).getDisplayName() + a + new ItemStack(FRItems.limestone_dust).getDisplayName(), - TextFormatting.AQUA + I18n.format("roads.gui.road_generic_name") + a + I18n.format("roads.gui.fragment_generic_name")); - - if (mouseX >= (left + 8) && mouseX <= (left + 24) && mouseY >= (top + 32) && mouseY <= (top + 48) && tileEntity.inventory.getStackInSlot(CrusherContainer.INPUT_1).getCount() == 0) { this.drawHoveringText(list, mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 98) && mouseX <= (left + 114) && mouseY >= (top + 32) && mouseY <= (top + 48) && tileEntity.inventory.getStackInSlot(CrusherContainer.OUTPUT_1).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.outputSlot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 152) && mouseX <= (left + 168) && mouseY >= (top + 32) && mouseY <= (top + 48) && tileEntity.inventory.getStackInSlot(CrusherContainer.FUEL).getCount() == 0 && !electric) { this.drawHoveringText(I18n.format("roads.gui.fuelSlot"), mouseX - left, mouseY - top + 15); } - } - } - - @Override - protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) { - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - mc.getTextureManager().bindTexture(guiTextures); - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - - drawTexturedModalRect(left, top, 0, 0, xSize, ySize); - if (electric) { - drawTexturedModalRect(left+xSize-25, top, 176, 0, 25, ySize); - } - - drawFuel(left, top); - drawProgress(left, top); - } - - private void drawFuel(int left, int top) { - if (electric) { - CrusherElectricEntity cee = (CrusherElectricEntity) tileEntity; - int p = getPercentage(cee.energy.getEnergyStored(), cee.energy.getMaxEnergyStored()); - int x = Math.round(p / 2.5F); - if (p == 100) { x = 42; } - drawTexturedModalRect(left + 155, top + 7 + (42-x), 242, 42-x, 14, x); - } else { - int p = getPercentage(tileEntity.fuel_remaining, tileEntity.last_fuel_cap); - int x = Math.round(p / 7.0F); - drawTexturedModalRect(left + 153, top + 15 + (14-x), 229, 14-x, 13, x); - } - } - - private void drawProgress(int left, int top) { - int p = getPercentage(tileEntity.timerCount, electric ? RoadsConfig.machine.electricCrusherTickRate : RoadsConfig.machine.crusherTickRate); - int x = Math.round(p * 1.6F); - drawTexturedModalRect(left + 8, top + 54, 0, 252, x, 4); - } - - private int getPercentage(int num, int max) { - float x = (float) num / (float) max; - int y = Math.round(x*100); - if (y > 100) { return 100; } - return y; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/GuiFabricator.java b/src/main/java/com/silvaniastudios/roads/client/gui/GuiFabricator.java deleted file mode 100644 index f1dc2c0c..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/GuiFabricator.java +++ /dev/null @@ -1,216 +0,0 @@ -package com.silvaniastudios.roads.client.gui; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorContainer; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorEntity; -import com.silvaniastudios.roads.blocks.tileentities.recipes.FabricatorRecipes; -import com.silvaniastudios.roads.blocks.tileentities.recipes.RecipeRegistry; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.GuiButton; -import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.client.renderer.GlStateManager; -import net.minecraft.client.renderer.RenderHelper; -import net.minecraft.client.resources.I18n; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; - -public class GuiFabricator extends GuiContainer { - - private static final ResourceLocation guiTextures = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/fabricator.png"); - private FabricatorEntity tileEntity; - private boolean electric; - GuiHiddenButton openSelector; - FabricatorRecipes recipe; - - public GuiFabricator(FabricatorEntity tileEntity, FabricatorContainer container, boolean electric) { - super(container); - xSize = 176; - ySize = 152; - this.tileEntity = tileEntity; - this.electric = electric; - } - - public void initGui() { - super.initGui(); - int guiLeft = (width - xSize) / 2; - int guiTop = (height - ySize) / 2; - - openSelector = new GuiHiddenButton(1, guiLeft + 78, guiTop + 20, 34, 34); - - buttonList.add(openSelector); - - setRecipe(); - } - - private void setRecipe() { - for (int i = 0; i < RecipeRegistry.fabricatorRecipes.size(); i++) { - FabricatorRecipes recipe = RecipeRegistry.fabricatorRecipes.get(i); - if (recipe.getId() == tileEntity.recipeId) { - this.recipe = recipe; - break; - } - } - } - - @Override - public void drawScreen(int mouseX, int mouseY, float partialTicks) { - this.drawDefaultBackground(); - super.drawScreen(mouseX, mouseY, partialTicks); - this.renderHoveredToolTip(mouseX, mouseY); - - if (recipe.getId() != tileEntity.recipeId) { - setRecipe(); - } - } - - @Override - protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) { - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - - drawTooltip(2, left, top, mouseX, mouseY); - if (electric) { - fontRenderer.drawString(I18n.format("roads.gui.electric_fabricator.name"), 6, 6, 4210752); - } else { - fontRenderer.drawString(I18n.format("roads.gui.fabricator.name"), 6, 6, 4210752); - } - } - - private void drawTooltip(int col, int left, int top, int mouseX, int mouseY) { - if (electric) { - FabricatorElectricEntity fee = (FabricatorElectricEntity) tileEntity; //...fi fo fum? - if (mouseX >= (left + 155) && mouseX <= (left + 169) && mouseY >= (top + 7) && mouseY <= (top + 49)) { this.drawHoveringText(fee.energy.getEnergyStored() + "/" + fee.energy.getMaxEnergyStored(), mouseX - left, mouseY - top + 15); } - } else { - if (mouseX >= (left + 153) && mouseX <= (left + 167) && mouseY >= (top + 15) && mouseY <= (top + 29)) { this.drawHoveringText(tileEntity.fuel_remaining + "/" + tileEntity.last_fuel_cap, mouseX - left, mouseY - top + 15); } - } - - if (tileEntity.inventory.getStackInSlot(FabricatorContainer.IN_1).getCount() < 1 && recipe != null) { - if (mouseX >= (left + 7) && mouseX <= (left + 24) && mouseY >= (top + 19) && mouseY <= (top + 36)) { - if (recipe.getInput1() != ItemStack.EMPTY) { this.drawHoveringText(I18n.format("roads.gui.fabricator.requirement") + recipe.getInput1().getCount() + "x " + recipe.getInput1().getDisplayName(), mouseX - left, mouseY - top + 15); } - } - } - - if (tileEntity.inventory.getStackInSlot(FabricatorContainer.IN_2).getCount() < 1 && recipe != null) { - if (mouseX >= (left + 25) && mouseX <= (left + 42) && mouseY >= (top + 19) && mouseY <= (top + 36)) { - if (recipe.getInput2() != ItemStack.EMPTY) { this.drawHoveringText(I18n.format("roads.gui.fabricator.requirement") + recipe.getInput2().getCount() + "x " + recipe.getInput2().getDisplayName(), mouseX - left, mouseY - top + 15); } - } - } - - if (tileEntity.inventory.getStackInSlot(FabricatorContainer.IN_3).getCount() < 1 && recipe != null) { - if (mouseX >= (left + 43) && mouseX <= (left + 60) && mouseY >= (top + 19) && mouseY <= (top + 36)) { - if (recipe.getInput3() != ItemStack.EMPTY) { this.drawHoveringText(I18n.format("roads.gui.fabricator.requirement") + recipe.getInput3().getCount() + "x " + recipe.getInput3().getDisplayName(), mouseX - left, mouseY - top + 15); } - } - } - - if (tileEntity.inventory.getStackInSlot(FabricatorContainer.IN_4).getCount() < 1 && recipe != null) { - if (mouseX >= (left + 7) && mouseX <= (left + 24) && mouseY >= (top + 37) && mouseY <= (top + 54)) { - if (recipe.getInput4() != ItemStack.EMPTY) { this.drawHoveringText(I18n.format("roads.gui.fabricator.requirement") + recipe.getInput4().getCount() + "x " + recipe.getInput4().getDisplayName(), mouseX - left, mouseY - top + 15); } - } - } - - if (tileEntity.inventory.getStackInSlot(FabricatorContainer.IN_5).getCount() < 1 && recipe != null) { - if (mouseX >= (left + 25) && mouseX <= (left + 42) && mouseY >= (top + 37) && mouseY <= (top + 54)) { - if (recipe.getInput5() != ItemStack.EMPTY) { this.drawHoveringText(I18n.format("roads.gui.fabricator.requirement") + recipe.getInput5().getCount() + "x " + recipe.getInput5().getDisplayName(), mouseX - left, mouseY - top + 15); } - } - } - - if (tileEntity.inventory.getStackInSlot(FabricatorContainer.IN_6).getCount() < 1 && recipe != null) { - if (mouseX >= (left + 43) && mouseX <= (left + 60) && mouseY >= (top + 37) && mouseY <= (top + 54)) { - if (recipe.getInput6() != ItemStack.EMPTY) { this.drawHoveringText(I18n.format("roads.gui.fabricator.requirement") + recipe.getInput6().getCount() + "x " + recipe.getInput6().getDisplayName(), mouseX - left, mouseY - top + 15); } - } - } - - if (mouseX >= (left + 79) && mouseX <= (left + 111) && mouseY >= (top + 21) && mouseY <= (top + 53)) { this.drawHoveringText(I18n.format("roads.gui.fabricator.recipe_select"), mouseX - left, mouseY - top + 15); } - } - - @Override - protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) { - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - mc.getTextureManager().bindTexture(guiTextures); - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - - drawTexturedModalRect(left, top, 0, 0, xSize, ySize); - if (electric) { - drawTexturedModalRect(left+xSize-25, top, 176, 0, 25, ySize); - } - - drawFuel(left, top); - drawProgress(left, top); - if (recipe != null) { - drawItemStack(recipe.getOutput(), left + 79, top + 21); - - if (recipe.getInput1() != ItemStack.EMPTY && tileEntity.inventory.getStackInSlot(FabricatorContainer.IN_1).getCount() < 1) { drawIngredientStack(recipe.getInput1(), left + 16, top + 28); } - if (recipe.getInput2() != ItemStack.EMPTY && tileEntity.inventory.getStackInSlot(FabricatorContainer.IN_2).getCount() < 1) { drawIngredientStack(recipe.getInput2(), left + 34, top + 28); } - if (recipe.getInput3() != ItemStack.EMPTY && tileEntity.inventory.getStackInSlot(FabricatorContainer.IN_3).getCount() < 1) { drawIngredientStack(recipe.getInput3(), left + 52, top + 28); } - if (recipe.getInput4() != ItemStack.EMPTY && tileEntity.inventory.getStackInSlot(FabricatorContainer.IN_4).getCount() < 1) { drawIngredientStack(recipe.getInput4(), left + 16, top + 46); } - if (recipe.getInput5() != ItemStack.EMPTY && tileEntity.inventory.getStackInSlot(FabricatorContainer.IN_5).getCount() < 1) { drawIngredientStack(recipe.getInput5(), left + 34, top + 46); } - if (recipe.getInput6() != ItemStack.EMPTY && tileEntity.inventory.getStackInSlot(FabricatorContainer.IN_6).getCount() < 1) { drawIngredientStack(recipe.getInput6(), left + 52, top + 46); } - } - } - - private void drawFuel(int left, int top) { - if (electric) { - FabricatorElectricEntity fee = (FabricatorElectricEntity) tileEntity; - int p = getPercentage(fee.energy.getEnergyStored(), fee.energy.getMaxEnergyStored()); - int x = Math.round(p / 2.5F); - if (p == 100) { x = 42; } - drawTexturedModalRect(left + 155, top + 7 + (42-x), 242, 42-x, 14, x); - } else { - int p = getPercentage(tileEntity.fuel_remaining, tileEntity.last_fuel_cap); - int x = Math.round(p / 7.0F); - drawTexturedModalRect(left + 153, top + 15 + (14-x), 229, 14-x, 13, x); - } - } - - private void drawProgress(int left, int top) { - int p = getPercentage(tileEntity.timerCount, electric ? RoadsConfig.machine.electricFabricatorTickRate : RoadsConfig.machine.fabricatorTickRate); - int x = Math.round(p * 1.6F); - drawTexturedModalRect(left + 8, top + 60, 0, 252, x, 4); - } - - private int getPercentage(int num, int max) { - float x = (float) num / (float) max; - int y = Math.round(x*100); - if (y > 100) { return 100; } - return y; - } - - @Override - protected void actionPerformed(GuiButton button) { - if (button == openSelector) { - Minecraft.getMinecraft().displayGuiScreen(new GuiFabricatorSelector(tileEntity)); - } - } - - private void drawItemStack(ItemStack stack, int x, int y) { - //Move the itemstack forward (towards the player) to give a "stacking" look - RenderHelper.disableStandardItemLighting(); - RenderHelper.enableGUIStandardItemLighting(); - GlStateManager.translate(0.0F, 0.0F, 32.0F); - GlStateManager.scale(2.0, 2.0, 2.0); - Minecraft.getMinecraft().getRenderItem().renderItemAndEffectIntoGUI(stack, x/2, y/2); - GlStateManager.scale(0.5, 0.5, 0.5); - GlStateManager.translate(0.0F, 0.0F, 3.0F); - fontRenderer.drawString("" + stack.getCount(), (x+26), (y+24), 0xFFFFFF); - GlStateManager.translate(0.0F, 0.0F, -35.0F); - RenderHelper.enableStandardItemLighting(); - } - - private void drawIngredientStack(ItemStack stack, int x, int y) { - //Move the itemstack forward (towards the player) to give a "stacking" look - RenderHelper.disableStandardItemLighting(); - RenderHelper.enableGUIStandardItemLighting(); - GlStateManager.translate(0.0F, 0.0F, 32.0F); - GlStateManager.scale(0.5, 0.5, 0.5); - fontRenderer.drawString(stack.getCount() + "x", (x-19+fontRenderer.getStringWidth(stack.getCount()+"x"))*2, (y+3)*2, 0xFFFFFF); - Minecraft.getMinecraft().getRenderItem().renderItemAndEffectIntoGUI(stack, x*2, y*2); - GlStateManager.scale(2.0, 2.0, 2.0); - - GlStateManager.translate(0.0F, 0.0F, -32.0F); - RenderHelper.enableStandardItemLighting(); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/GuiFabricatorSelector.java b/src/main/java/com/silvaniastudios/roads/client/gui/GuiFabricatorSelector.java deleted file mode 100644 index 480bffa1..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/GuiFabricatorSelector.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.silvaniastudios.roads.client.gui; - -import java.io.IOException; -import java.util.ArrayList; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorEntity; - -import net.minecraft.client.gui.GuiScreen; -import net.minecraft.util.ResourceLocation; - -public class GuiFabricatorSelector extends GuiScreen { - - private static final ResourceLocation guiTextures = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/fabricator_list.png"); - - private final int xSize = 356; - private final int ySize = 228; - - FabricatorRecipeList recipeList; - FabricatorEntity te; - ArrayList tooltipList = new ArrayList(); - - public GuiFabricatorSelector(FabricatorEntity te) { - this.te = te; - } - - public void initGui() { - super.initGui(); - int guiLeft = (width - xSize) / 2; - int guiTop = (height - ySize) / 2; - - recipeList = new FabricatorRecipeList(340, 212, guiTop+8, guiLeft+8, 28, width, height, fontRenderer, mc, this, te, tooltipList); - } - - @Override - public void drawScreen(int mouseX, int mouseY, float partialTicks) { - this.drawDefaultBackground(); - super.drawScreen(mouseX, mouseY, partialTicks); - - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - mc.getTextureManager().bindTexture(guiTextures); - drawTexturedModalRect(left, top, 0, 28, 180, ySize); - drawTexturedModalRect(left+180, top, 80, 28, 176, ySize); - - tooltipList.clear(); - - recipeList.drawScreen(mouseX, mouseY, partialTicks); - - try { - recipeList.handleMouseInput(mouseX, mouseY); - } catch (IOException e) { - e.printStackTrace(); - } - - if (tooltipList.size() > 0) { - drawHoveringText(tooltipList, mouseX, mouseY); - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/GuiHiddenButton.java b/src/main/java/com/silvaniastudios/roads/client/gui/GuiHiddenButton.java deleted file mode 100644 index 4aa25534..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/GuiHiddenButton.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.silvaniastudios.roads.client.gui; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.GuiButton; - -public class GuiHiddenButton extends GuiButton { - - public GuiHiddenButton(int buttonId, int x, int y, int width, int height) { - super(buttonId, x, y, width, height, ""); - } - - @Override - public void drawButton(Minecraft mc, int mouseX, int mouseY, float partialTicks) { - return; //It's invisible, why would we draw it o.o - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/GuiIconButton.java b/src/main/java/com/silvaniastudios/roads/client/gui/GuiIconButton.java deleted file mode 100644 index 3bc279dc..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/GuiIconButton.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.silvaniastudios.roads.client.gui; - -import java.util.Arrays; - -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.FontRenderer; -import net.minecraft.client.gui.GuiButton; -import net.minecraft.client.renderer.GlStateManager; -import net.minecraft.util.ResourceLocation; - -public class GuiIconButton extends GuiButton { - - public String iconName = "empty"; - public int iconId = 0; - public String hoverText = ""; - public int colourType = 0; - - public GuiIconButton(int buttonId, int x, int y) { - super(buttonId, x, y, 20, 20, ""); - } - - @Override - public void drawButton(Minecraft mc, int mouseX, int mouseY, float partialTicks) { - if (this.visible) { - ResourceLocation buttonIcon = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/buttons/" + iconName + ".png"); - mc.getTextureManager().bindTexture(buttonIcon); - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - this.hovered = mouseX >= this.x && mouseY >= this.y && mouseX < this.x + this.width && mouseY < this.y + this.height; - - GlStateManager.enableBlend(); - GlStateManager.tryBlendFuncSeparate(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA, GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ZERO); - GlStateManager.blendFunc(GlStateManager.SourceFactor.SRC_ALPHA, GlStateManager.DestFactor.ONE_MINUS_SRC_ALPHA); - - int colourOffset = 0; - if (colourType == 1) { colourOffset = 80; } - if (colourType == 2) { colourOffset = 160; } - - if (this.hovered) { - ResourceLocation hoverIcon = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/buttons/" + iconName + "_hovered.png"); - mc.getTextureManager().bindTexture(hoverIcon); - //net.minecraftforge.fml.client.config.GuiUtils.drawHoveringText(Arrays.asList(hoverText), mouseX, mouseY, width, height, -1, mc.fontRenderer); - } - - this.drawTexturedModalRect(this.x, this.y, findIconX(iconId), findIconY(iconId) + colourOffset, 20, 20); - - this.mouseDragged(mc, mouseX, mouseY); - } - } - - public int findIconX(int id) { - while (id > 11) { - id = id - 12; - } - return id * 20; - } - - public int findIconY(int id) { - int i = 0; - while (id > 11) { - id = id - 12; - i++; - } - return i * 20; - } - - //Borrowed from GuiScreen - protected void drawHoveringText(String text, int x, int y, FontRenderer font) { - net.minecraftforge.fml.client.config.GuiUtils.drawHoveringText(Arrays.asList(text), x, y, width, height, -1, font); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/GuiPaintFiller.java b/src/main/java/com/silvaniastudios/roads/client/gui/GuiPaintFiller.java deleted file mode 100644 index 9d619635..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/GuiPaintFiller.java +++ /dev/null @@ -1,199 +0,0 @@ -package com.silvaniastudios.roads.client.gui; - -import org.lwjgl.opengl.GL11; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerContainer; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerEntity; -import com.silvaniastudios.roads.fluids.FRFluids; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.GlStateManager; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraft.client.renderer.vertex.DefaultVertexFormats; -import net.minecraft.client.resources.I18n; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.fluids.FluidStack; -import net.minecraftforge.fluids.FluidTank; - -public class GuiPaintFiller extends GuiContainer { - - private static final ResourceLocation guiTextures = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/paint_filler.png"); - private PaintFillerEntity tileEntity; - private boolean electric; - - public GuiPaintFiller(PaintFillerEntity tileEntity, PaintFillerContainer container, boolean electric) { - super(container); - xSize = 196; - ySize = 206; - this.tileEntity = tileEntity; - this.electric = electric; - } - - @Override - protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) { - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - - drawTooltip(2, left, top, mouseX, mouseY); - if (electric) { - fontRenderer.drawString(I18n.format("roads.gui.electric_paint_filler.name"), 6, 6, 4210752); - } else { - fontRenderer.drawString(I18n.format("roads.gui.paint_filler.name"), 6, 6, 4210752); - } - } - - @Override - protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) { - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - mc.getTextureManager().bindTexture(guiTextures); - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - drawTexturedModalRect(left, top, 0, 0, xSize, ySize); - if (electric) { - drawTexturedModalRect(left+xSize-23, top, 196, 0, 23, 56); - } - - FluidTank gun_white = new FluidTank(PaintFillerEntity.GUN_TANK_CAP); - FluidTank gun_yellow = new FluidTank(PaintFillerEntity.GUN_TANK_CAP); - FluidTank gun_red = new FluidTank(PaintFillerEntity.GUN_TANK_CAP); - - gun_white.setFluid(new FluidStack(FRFluids.white_paint, tileEntity.gun_white)); - gun_yellow.setFluid(new FluidStack(FRFluids.yellow_paint, tileEntity.gun_yellow)); - gun_red.setFluid(new FluidStack(FRFluids.red_paint, tileEntity.gun_red)); - - if (tileEntity.inventory.getStackInSlot(PaintFillerContainer.GUN) != ItemStack.EMPTY) { - drawFluidSmall(left + 8, top + 60, gun_white); - drawFluidSmall(left + 24, top + 60, gun_yellow); - drawFluidSmall(left + 40, top + 60, gun_red); - } - drawFluid(left + 96, top + 8, tileEntity.white_paint); - drawFluid(left + 122, top + 8, tileEntity.yellow_paint); - drawFluid(left + 148, top + 8, tileEntity.red_paint); - - drawFuel(left, top); - drawProgress(left, top); - - - } - - @Override - public void drawScreen(int mouseX, int mouseY, float partialTicks) { - this.drawDefaultBackground(); - super.drawScreen(mouseX, mouseY, partialTicks); - this.renderHoveredToolTip(mouseX, mouseY); - } - - private void drawFuel(int left, int top) { - if (electric) { - PaintFillerElectricEntity pfee = (PaintFillerElectricEntity) tileEntity; - int p = getPercentage(pfee.energy.getEnergyStored(), pfee.energy.getMaxEnergyStored()); - int x = Math.round(p / 2.5F); - if (p == 100) { x = 42; } - drawTexturedModalRect(left + 175, top + 7 + (42-x), 242, 42-x, 14, x); - } else { - int p = getPercentage(tileEntity.fuel_remaining, tileEntity.last_fuel_cap); - int x = Math.round(p / 7.0F); - drawTexturedModalRect(left + 175, top + 13 + (14-x), 228, 14-x, 14, x); - } - } - - private void drawProgress(int left, int top) { - int p = getPercentage(tileEntity.timerCount, electric ? RoadsConfig.machine.electricFillerTickRate : RoadsConfig.machine.fillerTickRate); - int x = Math.round(p * 1.6F); - drawTexturedModalRect(left + 8, top + 114, 0, 252, x, 4); - } - - private void drawTooltip(int col, int left, int top, int mouseX, int mouseY) { - if (mouseX >= (left + 96) && mouseX <= (left + 116) && mouseY >= (top + 8) && mouseY <= (top + 108)) { this.drawHoveringText(tileEntity.white_paint.getFluidAmount() + "/" + PaintFillerEntity.FILLER_TANK_CAP, mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 122) && mouseX <= (left + 142) && mouseY >= (top + 8) && mouseY <= (top + 108)) { this.drawHoveringText(tileEntity.yellow_paint.getFluidAmount() + "/" + PaintFillerEntity.FILLER_TANK_CAP, mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 148) && mouseX <= (left + 168) && mouseY >= (top + 8) && mouseY <= (top + 108)) { this.drawHoveringText(tileEntity.red_paint.getFluidAmount() + "/" + PaintFillerEntity.FILLER_TANK_CAP, mouseX - left, mouseY - top + 15); } - - if (mouseX >= (left + 8) && mouseX <= (left + 18) && mouseY >= (top + 58) && mouseY <= (top + 108)) { this.drawHoveringText(tileEntity.gun_white + "/" + PaintFillerEntity.GUN_TANK_CAP, mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 24) && mouseX <= (left + 34) && mouseY >= (top + 58) && mouseY <= (top + 108)) { this.drawHoveringText(tileEntity.gun_yellow + "/" + PaintFillerEntity.GUN_TANK_CAP, mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 40) && mouseX <= (left + 50) && mouseY >= (top + 58) && mouseY <= (top + 108)) { this.drawHoveringText(tileEntity.gun_red + "/" + PaintFillerEntity.GUN_TANK_CAP, mouseX - left, mouseY - top + 15); } - - if (electric) { - PaintFillerElectricEntity pfee = (PaintFillerElectricEntity) tileEntity; - if (mouseX >= (left + 175) && mouseX <= (left + 189) && mouseY >= (top + 7) && mouseY <= (top + 49)) { this.drawHoveringText(pfee.energy.getEnergyStored() + "/" + pfee.energy.getMaxEnergyStored(), mouseX - left, mouseY - top + 15); } - } else { - if (mouseX >= (left + 175) && mouseX <= (left + 189) && mouseY >= (top + 13) && mouseY <= (top + 27)) { this.drawHoveringText(tileEntity.fuel_remaining + "/" + tileEntity.last_fuel_cap, mouseX - left, mouseY - top + 15); } - } - - if (RoadsConfig.general.guiGuide) { - if (mouseX >= (left + 21) && mouseX <= (left + 37) && mouseY >= (top + 36) && mouseY <= (top + 52) && !tileEntity.has_gun) { this.drawHoveringText(I18n.format("roads.gui.paint_filler.paint_gun_slot"), mouseX - left, mouseY - top + 15); } - - if (mouseX >= (left + 74) && mouseX <= (left + 90) && mouseY >= (top + 36) && mouseY <= (top + 52) && tileEntity.inventory.getStackInSlot(PaintFillerContainer.WHITE_DYE).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.paint_filler.white_slot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 74) && mouseX <= (left + 90) && mouseY >= (top + 64) && mouseY <= (top + 80) && tileEntity.inventory.getStackInSlot(PaintFillerContainer.YELLOW_DYE).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.paint_filler.yellow_slot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 74) && mouseX <= (left + 90) && mouseY >= (top + 92) && mouseY <= (top + 108) && tileEntity.inventory.getStackInSlot(PaintFillerContainer.RED_DYE).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.paint_filler.red_slot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 174) && mouseX <= (left + 190) && mouseY >= (top + 32) && mouseY <= (top + 48) && !electric && tileEntity.inventory.getStackInSlot(PaintFillerContainer.FUEL).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.fuelSlot"), mouseX - left, mouseY - top + 15); } - } - } - - private void drawFluidSmall(int left, int top, FluidTank fluid) { - if (fluid.getFluidAmount() > 0) { - int fillPercent = getPercentage(fluid.getFluidAmount(), PaintFillerEntity.GUN_TANK_CAP) / 2; - if (fillPercent > 48) { fillPercent = 48; } - mc.getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); - TextureAtlasSprite texture = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(fluid.getFluid().getFluid().getStill(fluid.getFluid()).toString()); - - for (int i = 0; i < 3; i++) { - drawFluidQuad(left, top+(i*16), 10, 16, texture); - } - - mc.getTextureManager().bindTexture(guiTextures); - drawTexturedModalRect(left, top, 8, 60, 10, 48-fillPercent); - } - drawTexturedModalRect(left, top, 246, 108, 10, 48); - } - - private void drawFluid(int left, int top, FluidTank fluid) { - if (fluid.getFluidAmount() > 0) { - int fillPercent = getPercentage(fluid.getFluidAmount(), PaintFillerEntity.FILLER_TANK_CAP); - mc.getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); - TextureAtlasSprite texture = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(fluid.getFluid().getFluid().getStill(fluid.getFluid()).toString()); - - for (int i = 0; i < 6; i++) { - drawFluidQuad(left, top+(i*16), 16, 16, texture); - drawFluidQuad(left+16, top+(i*16), 4, 16, texture); - } - - drawFluidQuad(left, top+96, 16, 4, texture); - drawFluidQuad(left+16, top+96, 4, 4, texture); - - mc.getTextureManager().bindTexture(guiTextures); - drawTexturedModalRect(left, top, 96, 8, 20, 100-fillPercent); - } - drawTexturedModalRect(left, top, 236, 156, 20, 100); - } - - private void drawFluidQuad(int x, int y, int width, int height, TextureAtlasSprite texture) { - float minU = texture.getInterpolatedU(0); - float minV = texture.getInterpolatedV(0); - float maxU = texture.getInterpolatedU(width); - float maxV = texture.getInterpolatedV(height); - - Tessellator tessellator = Tessellator.getInstance(); - BufferBuilder worldrenderer = tessellator.getBuffer(); - worldrenderer.begin(GL11.GL_QUADS, DefaultVertexFormats.POSITION_TEX); - worldrenderer.pos((double)x, (double)(y + height), (double)this.zLevel).tex(minU, maxV).endVertex(); - worldrenderer.pos((double)(x + width), (double)(y + height), (double)this.zLevel).tex(maxU, maxV).endVertex(); - worldrenderer.pos((double)(x + width), (double)y, (double)this.zLevel).tex(maxU, minV).endVertex(); - worldrenderer.pos((double)x, (double)y, (double)this.zLevel).tex(minU, minV).endVertex(); - tessellator.draw(); - } - - private int getPercentage(int num, int max) { - float x = (float) num / (float) max; - int y = Math.round(x*100); - if (y > 100) { return 100; } - return y; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/GuiPaintOven.java b/src/main/java/com/silvaniastudios/roads/client/gui/GuiPaintOven.java deleted file mode 100644 index 89e87874..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/GuiPaintOven.java +++ /dev/null @@ -1,153 +0,0 @@ -package com.silvaniastudios.roads.client.gui; - -import org.lwjgl.opengl.GL11; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenContainer; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenEntity; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.GlStateManager; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraft.client.renderer.vertex.DefaultVertexFormats; -import net.minecraft.client.resources.I18n; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.fluids.FluidTank; - -public class GuiPaintOven extends GuiContainer { - - private static final ResourceLocation guiTextures = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/paint_oven.png"); - private PaintOvenEntity tileEntity; - private boolean electric; - - public GuiPaintOven(PaintOvenEntity tileEntity, PaintOvenContainer container, boolean electric) { - super(container); - xSize = 196; - ySize = 156; - this.tileEntity = tileEntity; - this.electric = electric; - } - - @Override - protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) { - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - - drawTooltip(2, left, top, mouseX, mouseY); - } - - @Override - protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) { - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - mc.getTextureManager().bindTexture(guiTextures); - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - drawTexturedModalRect(left, top, 0, 0, xSize, ySize); - if (electric) { - drawTexturedModalRect(left+xSize-23, top, 196, 0, 23, 56); - } - - drawFluid(left + 8, top + 8, tileEntity.water); - drawFluid(left + 108, top + 8, tileEntity.paint); - - drawFuel(left, top); - drawProgress(left, top); - } - - @Override - public void drawScreen(int mouseX, int mouseY, float partialTicks) { - this.drawDefaultBackground(); - super.drawScreen(mouseX, mouseY, partialTicks); - this.renderHoveredToolTip(mouseX, mouseY); - } - - private void drawFluid(int left, int top, FluidTank fluid) { - if (fluid.getFluidAmount() > 0) { - int fillPercent = getPercentage(fluid.getFluidAmount(), PaintOvenEntity.FILLER_TANK_CAP)/2; - mc.getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); - TextureAtlasSprite waterTexture = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(fluid.getFluid().getFluid().getStill(fluid.getFluid()).toString()); - - for (int i = 0; i < 3; i++) { - drawFluidQuad(left, top+(i*16), 16, 16, waterTexture); - drawFluidQuad(left+16, top+(i*16), 16, 16, waterTexture); - drawFluidQuad(left+32, top+(i*16), 16, 16, waterTexture); - drawFluidQuad(left+48, top+(i*16), 12, 16, waterTexture); - } - - drawFluidQuad(left, top+48, 16, 2, waterTexture); - drawFluidQuad(left+16, top+48, 16, 2, waterTexture); - drawFluidQuad(left+32, top+48, 16, 2, waterTexture); - drawFluidQuad(left+48, top+48, 12, 2, waterTexture); - - mc.getTextureManager().bindTexture(guiTextures); - drawTexturedModalRect(left, top, 8, 8, 60, 50-fillPercent); - } - drawTexturedModalRect(left, top, 196, 206, 60, 50); - } - - private void drawFluidQuad(int x, int y, int width, int height, TextureAtlasSprite texture) { - float minU = texture.getInterpolatedU(0); - float minV = texture.getInterpolatedV(0); - float maxU = texture.getInterpolatedU(width); - float maxV = texture.getInterpolatedV(height); - - Tessellator tessellator = Tessellator.getInstance(); - BufferBuilder worldrenderer = tessellator.getBuffer(); - worldrenderer.begin(GL11.GL_QUADS, DefaultVertexFormats.POSITION_TEX); - worldrenderer.pos((double)x, (double)(y + height), (double)this.zLevel).tex(minU, maxV).endVertex(); - worldrenderer.pos((double)(x + width), (double)(y + height), (double)this.zLevel).tex(maxU, maxV).endVertex(); - worldrenderer.pos((double)(x + width), (double)y, (double)this.zLevel).tex(maxU, minV).endVertex(); - worldrenderer.pos((double)x, (double)y, (double)this.zLevel).tex(minU, minV).endVertex(); - tessellator.draw(); - } - - private void drawFuel(int left, int top) { - if (electric) { - PaintOvenElectricEntity poee = (PaintOvenElectricEntity) tileEntity; - int p = getPercentage(poee.energy.getEnergyStored(), poee.energy.getMaxEnergyStored()); - int x = Math.round(p / 2.5F); - if (p == 100) { x = 42; } - drawTexturedModalRect(left + 175, top + 7 + (42-x), 242, 42-x, 14, x); - } else { - int p = getPercentage(tileEntity.fuel_remaining, tileEntity.last_fuel_cap); - int x = Math.round(p / 7.0F); - drawTexturedModalRect(left + 175, top + 13 + (14-x), 228, 14-x, 14, x); - } - } - - private void drawProgress(int left, int top) { - int p = getPercentage(tileEntity.timerCount, electric ? RoadsConfig.machine.electricPaintOvenTickRate : RoadsConfig.machine.paintOvenTickRate); - int x = Math.round(p * 1.6F); - drawTexturedModalRect(left + 8, top + 64, 0, 252, x, 4); - } - - private void drawTooltip(int col, int left, int top, int mouseX, int mouseY) { - if (mouseX >= (left + 8) && mouseX <= (left + 68) && mouseY >= (top + 8) && mouseY <= (top + 58)) { this.drawHoveringText(tileEntity.water.getFluidAmount() + "/" + PaintOvenEntity.FILLER_TANK_CAP, mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 108) && mouseX <= (left + 168) && mouseY >= (top + 8) && mouseY <= (top + 58)) { this.drawHoveringText(tileEntity.paint.getFluidAmount() + "/" + PaintOvenEntity.FILLER_TANK_CAP, mouseX - left, mouseY - top + 15); } - - if (electric) { - PaintOvenElectricEntity pfee = (PaintOvenElectricEntity) tileEntity; - if (mouseX >= (left + 175) && mouseX <= (left + 189) && mouseY >= (top + 7) && mouseY <= (top + 49)) { this.drawHoveringText(pfee.energy.getEnergyStored() + "/" + pfee.energy.getMaxEnergyStored(), mouseX - left, mouseY - top + 15); } - } else { - if (mouseX >= (left + 175) && mouseX <= (left + 189) && mouseY >= (top + 13) && mouseY <= (top + 27)) { this.drawHoveringText(tileEntity.fuel_remaining + "/" + tileEntity.last_fuel_cap, mouseX - left, mouseY - top + 15); } - } - - if (RoadsConfig.general.guiGuide) { - if (mouseX >= (left + 80) && mouseX <= (left + 96) && mouseY >= (top + 25) && mouseY <= (top + 41) && tileEntity.inventory.getStackInSlot(PaintOvenContainer.DYE).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.paint_oven.dye_slot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 174) && mouseX <= (left + 190) && mouseY >= (top + 32) && mouseY <= (top + 48) && !electric && tileEntity.inventory.getStackInSlot(PaintOvenContainer.FUEL).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.fuelSlot"), mouseX - left, mouseY - top + 15); } - } - } - - private int getPercentage(int num, int max) { - float x = (float) num / (float) max; - int y = Math.round(x*100); - if (y > 100) { return 100; } - return y; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/GuiRoadFactory.java b/src/main/java/com/silvaniastudios/roads/client/gui/GuiRoadFactory.java deleted file mode 100644 index 5f5bb961..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/GuiRoadFactory.java +++ /dev/null @@ -1,267 +0,0 @@ -package com.silvaniastudios.roads.client.gui; - -import java.util.Arrays; -import java.util.List; - -import org.lwjgl.opengl.GL11; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerBlock; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryBlock; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryContainer; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryEntity; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.GlStateManager; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraft.client.renderer.vertex.DefaultVertexFormats; -import net.minecraft.client.resources.I18n; -import net.minecraft.init.Blocks; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.text.TextFormatting; -import net.minecraftforge.fluids.FluidTank; - -public class GuiRoadFactory extends GuiContainer { - - private static final ResourceLocation guiTextures = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/road_factory.png"); - private RoadFactoryEntity tileEntity; - private boolean electric; - - public GuiRoadFactory(RoadFactoryEntity tileEntity, RoadFactoryContainer container, boolean electric) { - super(container); - xSize = 176; - ySize = 206; - this.tileEntity = tileEntity; - this.electric = electric; - } - - @Override - protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) { - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - - fontRenderer.drawString(I18n.format("roads.gui.road_factory.link"), 116, 96, 4210752); - drawTooltip(2, left, top, mouseX, mouseY); - if (electric) { - fontRenderer.drawString(I18n.format("roads.gui.electric_road_factory.name"), 32, 6, 4210752); - } else { - fontRenderer.drawString(I18n.format("roads.gui.road_factory.name"), 32, 6, 4210752); - } - } - - @Override - protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) { - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - mc.getTextureManager().bindTexture(guiTextures); - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - drawTexturedModalRect(left, top, 0, 0, xSize, ySize); - if (electric) { - drawTexturedModalRect(left+xSize-25, top, 176, 0, 25, 206); - } - - if (tileEntity.inventory.getSlots() < 12) { - drawTexturedModalRect(left + 81, top + 42, 238, 42, 18, 18); - } - - drawFluid(left+8, top+8, tileEntity.tarFluid); - drawFuel(left, top); - drawProgress(left, top); - - if (distillerFound()) { - drawTexturedModalRect(left + 157, top + 95, 232, 14, 10, 10); - } - } - - @Override - public void drawScreen(int mouseX, int mouseY, float partialTicks) { - this.drawDefaultBackground(); - super.drawScreen(mouseX, mouseY, partialTicks); - this.renderHoveredToolTip(mouseX, mouseY); - } - - private void drawFuel(int left, int top) { - if (electric) { - RoadFactoryElectricEntity rfee = (RoadFactoryElectricEntity) tileEntity; - int p = getPercentage(rfee.energy.getEnergyStored(), rfee.energy.getMaxEnergyStored()); - int x = Math.round(p / 2.5F); - if (p == 100) { x = 42; } - drawTexturedModalRect(left + 153, top + 18 + (42-x), 242, 42-x, 14, x); - } else { - int p = getPercentage(tileEntity.fuel_remaining, tileEntity.last_fuel_cap); - int x = Math.round(p / 7.0F); - drawTexturedModalRect(left + 153, top + 23 + (14-x), 228, 14-x, 14, x); - } - } - - private void drawProgress(int left, int top) { - int p = getPercentage(tileEntity.timerCount, RoadsConfig.machine.roadFactoryTickRate); - int x = Math.round(p * 1.6F); - drawTexturedModalRect(left + 8, top + 114, 0, 252, x, 4); - } - - private void drawTooltip(int col, int left, int top, int mouseX, int mouseY) { - if (mouseX >= (left + 8) && mouseX <= (left + 28) && mouseY >= (top + 8) && mouseY <= (top + 108)) { this.drawHoveringText(tileEntity.tarFluid.getFluidAmount() + "/" + RoadFactoryEntity.TANK_CAP, mouseX - left, mouseY - top + 15); } - - if (electric) { - RoadFactoryElectricEntity rfee = (RoadFactoryElectricEntity) tileEntity; - if (mouseX >= (left + 153) && mouseX <= (left + 167) && mouseY >= (top + 18) && mouseY <= (top + 60)) { this.drawHoveringText(rfee.energy.getEnergyStored() + "/" + rfee.energy.getMaxEnergyStored(), mouseX - left, mouseY - top + 15); } - } else { - if (mouseX >= (left + 153) && mouseX <= (left + 167) && mouseY >= (top + 23) && mouseY <= (top + 37)) { this.drawHoveringText(tileEntity.fuel_remaining + "/" + tileEntity.last_fuel_cap, mouseX - left, mouseY - top + 15); } - } - - if (tileEntity.inventory.getSlots() < 12) { - List errorList = Arrays.asList( - "An update is available for this machine, and is required to use this slot.", - "Please break and re-place the machine in order to use the Modifier slot."); - if (mouseX >= (left + 82) && mouseX <= (left + 98) && mouseY >= (top + 43) && mouseY <= (top + 59)) { this.drawHoveringText(errorList, mouseX - left, mouseY - top + 15); } - } - - if (RoadsConfig.general.guiGuide) { - String a = TextFormatting.RESET + " -> " + TextFormatting.GREEN; - List inputList = Arrays.asList( - I18n.format("roads.gui.inputSlot"), - "", - TextFormatting.UNDERLINE + I18n.format("roads.gui.valid"), - TextFormatting.RED + I18n.format("roads.gui.road_factory.tar_required"), - TextFormatting.AQUA + new ItemStack(FRBlocks.generic_blocks, 1, 0).getDisplayName() + a + FRBlocks.road_block_standard.getLocalizedName(), - TextFormatting.AQUA + new ItemStack(Blocks.STONE, 1, 0).getDisplayName() + a + FRBlocks.road_block_stone.getLocalizedName(), - TextFormatting.AQUA + new ItemStack(Blocks.STONE, 1, 1).getDisplayName() + a + FRBlocks.road_block_pale.getLocalizedName(), - TextFormatting.AQUA + new ItemStack(Blocks.STONE, 1, 3).getDisplayName() + a + FRBlocks.road_block_light.getLocalizedName(), - TextFormatting.AQUA + new ItemStack(Blocks.STONE, 1, 5).getDisplayName() + a + FRBlocks.road_block_dark.getLocalizedName(), - TextFormatting.AQUA + new ItemStack(Blocks.STONE, 1, 6).getDisplayName() + a + FRBlocks.road_block_fine.getLocalizedName(), - TextFormatting.AQUA + Blocks.GRASS.getLocalizedName() + a + FRBlocks.road_block_grass.getLocalizedName(), - TextFormatting.AQUA + Blocks.DIRT.getLocalizedName() + a + FRBlocks.road_block_dirt.getLocalizedName(), - TextFormatting.AQUA + Blocks.GRAVEL.getLocalizedName() + a + FRBlocks.road_block_gravel.getLocalizedName(), - TextFormatting.AQUA + Blocks.SAND.getLocalizedName() + a + FRBlocks.road_block_sand.getLocalizedName()); - - List modifierList = Arrays.asList( - I18n.format("roads.gui.road_factory.modifierSlot"), - "", - I18n.format("roads.gui.road_factory.modifierSlot.tooltip_1"), - I18n.format("roads.gui.road_factory.modifierSlot.tooltip_2"), - TextFormatting.AQUA + I18n.format("roads.gui.road_factory.modifierSlot.red_dye") + a + FRBlocks.road_block_red.getLocalizedName(), - TextFormatting.AQUA + I18n.format("roads.gui.road_factory.modifierSlot.blue_dye") + a + FRBlocks.road_block_blue.getLocalizedName(), - TextFormatting.AQUA + I18n.format("roads.gui.road_factory.modifierSlot.yellow_dye") + a + FRBlocks.road_block_yellow.getLocalizedName(), - TextFormatting.AQUA + I18n.format("roads.gui.road_factory.modifierSlot.green_dye") + a + FRBlocks.road_block_green.getLocalizedName(), - TextFormatting.AQUA + I18n.format("roads.gui.road_factory.modifierSlot.white_dye") + a + FRBlocks.road_block_white.getLocalizedName()); - - boolean showInput = (tileEntity.inventory.getStackInSlot(RoadFactoryContainer.INPUT_1).getCount() + - tileEntity.inventory.getStackInSlot(RoadFactoryContainer.INPUT_2).getCount() + - tileEntity.inventory.getStackInSlot(RoadFactoryContainer.INPUT_3).getCount() + - tileEntity.inventory.getStackInSlot(RoadFactoryContainer.INPUT_4).getCount()) == 0; - - boolean showOutput = (tileEntity.inventory.getStackInSlot(RoadFactoryContainer.OUTPUT_1).getCount() + - tileEntity.inventory.getStackInSlot(RoadFactoryContainer.OUTPUT_2).getCount() + - tileEntity.inventory.getStackInSlot(RoadFactoryContainer.OUTPUT_3).getCount() + - tileEntity.inventory.getStackInSlot(RoadFactoryContainer.OUTPUT_4).getCount()) == 0; - - if (mouseX >= (left + 34) && mouseX <= (left + 73) && mouseY >= (top + 20) && mouseY <= (top + 59) && showInput) { - this.drawHoveringText(inputList, mouseX - left, mouseY - top + 15); - } - - if (mouseX >= (left + 107) && mouseX <= (left + 146) && mouseY >= (top + 20) && mouseY <= (top + 59) && showOutput) { - this.drawHoveringText(I18n.format("roads.gui.outputSlot"), mouseX - left, mouseY - top + 15); - } - - if (mouseX >= (left + 34) && mouseX <= (left + 50) && mouseY >= (top + 70) && mouseY <= (top + 86) - && tileEntity.inventory.getStackInSlot(RoadFactoryContainer.FLUID_IN).getCount() == 0) { - this.drawHoveringText(I18n.format("roads.gui.tarInputSlot"), mouseX - left, mouseY - top + 15); - } - - if (mouseX >= (left + 34) && mouseX <= (left + 50) && mouseY >= (top + 92) && mouseY <= (top + 108) - && tileEntity.inventory.getStackInSlot(RoadFactoryContainer.FLUID_IN_BUCKET).getCount() == 0) { - this.drawHoveringText(I18n.format("roads.gui.bucketOutputSlot"), mouseX - left, mouseY - top + 15); - } - - if (mouseX >= (left + 152) && mouseX <= (left + 168) && mouseY >= (top + 43) && mouseY <= (top + 59) && !electric - && tileEntity.inventory.getStackInSlot(RoadFactoryContainer.FUEL).getCount() == 0) { - this.drawHoveringText(I18n.format("roads.gui.fuelSlot"), mouseX - left, mouseY - top + 15); - } - - if (mouseX >= (left + 82) && mouseX <= (left + 98) && mouseY >= (top + 43) && mouseY <= (top + 59) && tileEntity.inventory.getSlots() >= 12 - && tileEntity.inventory.getStackInSlot(RoadFactoryContainer.MODIFIER).getCount() == 0) { - this.drawHoveringText(modifierList, mouseX - left, mouseY - top + 15); - } - - if (distillerFound()) { - if (mouseX >= (left + 114) && mouseX <= (left + 169) && mouseY >= (top + 93) && mouseY <= (top + 107)) { this.drawHoveringText(TextFormatting.GREEN + I18n.format("roads.gui.road_factory.connect_pass"), mouseX - left, mouseY - top + 15); } - } else { - List error = Arrays.asList( - TextFormatting.RED + I18n.format("roads.gui.road_factory.connect_failed_1"), - TextFormatting.RED + I18n.format("roads.gui.road_factory.connect_failed_2"), - TextFormatting.RED + I18n.format("roads.gui.road_factory.connect_failed_3") - ); - if (mouseX >= (left + 114) && mouseX <= (left + 169) && mouseY >= (top + 93) && mouseY <= (top + 107)) { this.drawHoveringText(error, mouseX - left, mouseY - top + 15); } - } - } - } - - private void drawFluid(int left, int top, FluidTank fluid) { - if (fluid.getFluidAmount() > 0) { - int fillPercent = getPercentage(fluid.getFluidAmount(), RoadFactoryEntity.TANK_CAP); - mc.getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); - TextureAtlasSprite texture = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(fluid.getFluid().getFluid().getStill(fluid.getFluid()).toString()); - - for (int i = 0; i < 6; i++) { - drawFluidQuad(left, top+(i*16), 16, 16, texture); - drawFluidQuad(left+16, top+(i*16), 4, 16, texture); - } - - drawFluidQuad(left, top+96, 16, 4, texture); - drawFluidQuad(left+16, top+96, 4, 4, texture); - - mc.getTextureManager().bindTexture(guiTextures); - drawTexturedModalRect(left, top, 8, 8, 20, 100-fillPercent); - } - drawTexturedModalRect(left, top, 236, 156, 20, 100); - } - - private void drawFluidQuad(int x, int y, int width, int height, TextureAtlasSprite texture) { - float minU = texture.getInterpolatedU(0); - float minV = texture.getInterpolatedV(0); - float maxU = texture.getInterpolatedU(width); - float maxV = texture.getInterpolatedV(height); - - Tessellator tessellator = Tessellator.getInstance(); - BufferBuilder worldrenderer = tessellator.getBuffer(); - worldrenderer.begin(GL11.GL_QUADS, DefaultVertexFormats.POSITION_TEX); - worldrenderer.pos((double)x, (double)(y + height), (double)this.zLevel).tex(minU, maxV).endVertex(); - worldrenderer.pos((double)(x + width), (double)(y + height), (double)this.zLevel).tex(maxU, maxV).endVertex(); - worldrenderer.pos((double)(x + width), (double)y, (double)this.zLevel).tex(maxU, minV).endVertex(); - worldrenderer.pos((double)x, (double)y, (double)this.zLevel).tex(minU, minV).endVertex(); - tessellator.draw(); - } - - private int getPercentage(int num, int max) { - float x = (float) num / (float) max; - int y = Math.round(x*100); - if (y > 100) { return 100; } - return y; - } - - private boolean distillerFound() { - IBlockState state = tileEntity.getState(); - RoadFactoryBlock block = (RoadFactoryBlock) tileEntity.getBlockType(); - EnumFacing left = EnumFacing.WEST; - - if (block.getMetaFromState(state) == 1) { left = EnumFacing.NORTH; } - if (block.getMetaFromState(state) == 2) { left = EnumFacing.EAST; } - if (block.getMetaFromState(state) == 3) { left = EnumFacing.SOUTH; } - - if (mc.world.getBlockState(tileEntity.getPos().offset(left)).getBlock() instanceof TarDistillerBlock) { - return true; - } - return false; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/GuiScrollingList_Mod.java b/src/main/java/com/silvaniastudios/roads/client/gui/GuiScrollingList_Mod.java deleted file mode 100644 index fcc1fbb1..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/GuiScrollingList_Mod.java +++ /dev/null @@ -1,387 +0,0 @@ -/* - * Minecraft Forge - * Copyright (c) 2016-2018. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation version 2.1 - * of the License. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -/* - * Modified by Fureniku. Modifications made are as follows - * - Removed the border so the first element can correctly top-align - * - Removed check for height so the scrollbar will always render - */ - -package com.silvaniastudios.roads.client.gui; - -import java.awt.*; -import java.io.IOException; -import java.util.ArrayList; - -import net.minecraft.client.renderer.*; -import net.minecraft.client.renderer.block.model.IBakedModel; -import org.lwjgl.input.Mouse; -import org.lwjgl.opengl.GL11; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.FontRenderer; -import net.minecraft.client.gui.Gui; -import net.minecraft.client.gui.ScaledResolution; -import net.minecraft.client.renderer.vertex.DefaultVertexFormats; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.client.config.GuiUtils; - -public abstract class GuiScrollingList_Mod -{ - private final Minecraft client; - protected final int listWidth; - protected final int listHeight; - protected final int screenWidth; - protected final int screenHeight; - protected final int top; - protected final int bottom; - protected final int right; - protected final int left; - protected final int slotHeight; - - protected int mouseX; - protected int mouseY; - private float initialMouseClickY = -2.0F; - private float scrollFactor; - private float scrollDistance; - protected int selectedIndex = -1; - private long lastClickTime = 0L; - private boolean highlightSelected = true; - private boolean hasHeader; - private int headerHeight; - protected boolean captureMouse = true; - protected ArrayList tooltipList; - - public GuiScrollingList_Mod(Minecraft client, int width, int height, int top, int bottom, int left, int entryHeight, int screenWidth, int screenHeight, ArrayList tooltipList) - { - this.client = client; - this.listWidth = width; - this.listHeight = height; - this.top = top; - this.bottom = bottom; - this.slotHeight = entryHeight; - this.left = left; - this.right = width + this.left; - this.screenWidth = screenWidth; - this.screenHeight = screenHeight; - this.tooltipList = tooltipList; - } - - @Deprecated // Unused, remove in 1.9.3? - public void func_27258_a(boolean p_27258_1_) - { - this.highlightSelected = p_27258_1_; - } - - @Deprecated protected void func_27259_a(boolean hasFooter, int footerHeight){ setHeaderInfo(hasFooter, footerHeight); } - protected void setHeaderInfo(boolean hasHeader, int headerHeight) - { - this.hasHeader = hasHeader; - this.headerHeight = headerHeight; - if (!hasHeader) this.headerHeight = 0; - } - - protected abstract int getSize(); - - protected abstract void elementClicked(int index, boolean doubleClick); - - protected abstract boolean isSelected(int index); - - protected int getContentHeight() - { - return this.getSize() * this.slotHeight + this.headerHeight; - } - - protected abstract void drawBackground(); - - /** - * Draw anything special on the screen. GL_SCISSOR is enabled for anything that - * is rendered outside of the view box. Do not mess with SCISSOR unless you support this. - */ - protected abstract void drawSlot(int slotIdx, int entryRight, int slotTop, int slotBuffer, Tessellator tess); - - @Deprecated protected void func_27260_a(int entryRight, int relativeY, Tessellator tess) {} - /** - * Draw anything special on the screen. GL_SCISSOR is enabled for anything that - * is rendered outside of the view box. Do not mess with SCISSOR unless you support this. - */ - protected void drawHeader(int entryRight, int relativeY, Tessellator tess) { func_27260_a(entryRight, relativeY, tess); } - - @Deprecated protected void func_27255_a(int x, int y) {} - protected void clickHeader(int x, int y) { func_27255_a(x, y); } - - @Deprecated protected void func_27257_b(int mouseX, int mouseY) {} - /** - * Draw anything special on the screen. GL_SCISSOR is enabled for anything that - * is rendered outside of the view box. Do not mess with SCISSOR unless you support this. - */ - protected void drawScreen(int mouseX, int mouseY) { func_27257_b(mouseX, mouseY); } - - private void applyScrollLimits() - { - int listHeight = this.getContentHeight() - (this.bottom - this.top - 4); - - if (listHeight < 0) - { - listHeight /= 2; - } - - if (this.scrollDistance < 0.0F) - { - this.scrollDistance = 0.0F; - } - - if (this.scrollDistance > (float)listHeight) - { - this.scrollDistance = (float)listHeight; - } - } - - - public void handleMouseInput(int mouseX, int mouseY) throws IOException - { - boolean isHovering = mouseX >= this.left && mouseX <= this.left + this.listWidth && - mouseY >= this.top && mouseY <= this.bottom; - if (!isHovering) - return; - - int scroll = Mouse.getEventDWheel(); - if (scroll != 0) - { - this.scrollDistance += (float)((-1 * scroll / 120.0F) * this.slotHeight / 2); - } - } - - public void drawScreen(int mouseX, int mouseY, float partialTicks) { - this.mouseX = mouseX; - this.mouseY = mouseY; - this.drawBackground(); - - boolean isHovering = mouseX >= this.left && mouseX <= this.left + this.listWidth && - mouseY >= this.top && mouseY <= this.bottom; - int listLength = this.getSize(); - int scrollBarWidth = 6; - int scrollBarRight = this.left + this.listWidth; - int scrollBarLeft = scrollBarRight - scrollBarWidth; - int entryLeft = this.left; - int entryRight = scrollBarLeft - 1; - int viewHeight = this.bottom - this.top; - int border = 0; - - if (Mouse.isButtonDown(0)) - { - if (this.initialMouseClickY == -1.0F) - { - if (isHovering) - { - int mouseListY = mouseY - this.top - this.headerHeight + (int)this.scrollDistance - border; - int slotIndex = mouseListY / this.slotHeight; - - if (mouseX >= entryLeft && mouseX <= entryRight && slotIndex >= 0 && mouseListY >= 0 && slotIndex < listLength) - { - this.elementClicked(slotIndex, slotIndex == this.selectedIndex && System.currentTimeMillis() - this.lastClickTime < 250L); - this.selectedIndex = slotIndex; - this.lastClickTime = System.currentTimeMillis(); - } - else if (mouseX >= entryLeft && mouseX <= entryRight && mouseListY < 0) - { - this.clickHeader(mouseX - entryLeft, mouseY - this.top + (int)this.scrollDistance - border); - } - - if (mouseX >= scrollBarLeft && mouseX <= scrollBarRight) - { - resetScrollbar(viewHeight, border); - } - - this.initialMouseClickY = mouseY; - } - else - { - this.initialMouseClickY = -2.0F; - } - } - else if (this.initialMouseClickY >= 0.0F) - { - this.scrollDistance -= ((float)mouseY - this.initialMouseClickY) * this.scrollFactor; - this.initialMouseClickY = (float)mouseY; - } - } - else - { - this.initialMouseClickY = -1.0F; - } - - this.applyScrollLimits(); - Tessellator tess = Tessellator.getInstance(); - BufferBuilder worldr = tess.getBuffer(); - - ScaledResolution res = new ScaledResolution(client); - double scaleW = client.displayWidth / res.getScaledWidth_double(); - double scaleH = client.displayHeight / res.getScaledHeight_double(); - GL11.glEnable(GL11.GL_SCISSOR_TEST); - GL11.glScissor((int)(left * scaleW), (int)(client.displayHeight - (bottom * scaleH)), - (int)(listWidth * scaleW), (int)(viewHeight * scaleH)); - - if (this.client.world != null) - { - this.drawGradientRect(this.left, this.top, this.right, this.bottom, 0xC0101010, 0xD0101010); - } - - int baseY = this.top + border - (int)this.scrollDistance; - - if (this.hasHeader) { - this.drawHeader(entryRight, baseY, tess); - } - - for (int slotIdx = 0; slotIdx < listLength; ++slotIdx) - { - int slotTop = baseY + slotIdx * this.slotHeight + this.headerHeight; - int slotBuffer = this.slotHeight - border; - - if (slotTop <= this.bottom && slotTop + slotBuffer >= this.top) - { - if (this.highlightSelected && this.isSelected(slotIdx)) - { - int min = this.left; - int max = entryRight; - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - GlStateManager.disableTexture2D(); - worldr.begin(GL11.GL_QUADS, DefaultVertexFormats.POSITION_TEX_COLOR); - worldr.pos(min, slotTop + slotBuffer + 2, 0).tex(0, 1).color(0x80, 0x80, 0x80, 0xFF).endVertex(); - worldr.pos(max, slotTop + slotBuffer + 2, 0).tex(1, 1).color(0x80, 0x80, 0x80, 0xFF).endVertex(); - worldr.pos(max, slotTop - 2, 0).tex(1, 0).color(0x80, 0x80, 0x80, 0xFF).endVertex(); - worldr.pos(min, slotTop - 2, 0).tex(0, 0).color(0x80, 0x80, 0x80, 0xFF).endVertex(); - worldr.pos(min + 1, slotTop + slotBuffer + 1, 0).tex(0, 1).color(0x00, 0x00, 0x00, 0xFF).endVertex(); - worldr.pos(max - 1, slotTop + slotBuffer + 1, 0).tex(1, 1).color(0x00, 0x00, 0x00, 0xFF).endVertex(); - worldr.pos(max - 1, slotTop - 1, 0).tex(1, 0).color(0x00, 0x00, 0x00, 0xFF).endVertex(); - worldr.pos(min + 1, slotTop - 1, 0).tex(0, 0).color(0x00, 0x00, 0x00, 0xFF).endVertex(); - tess.draw(); - GlStateManager.enableTexture2D(); - } - - this.drawSlot(slotIdx, entryRight, slotTop, slotBuffer, tess); - } - } - - GlStateManager.disableDepth(); - - int extraHeight = (this.getContentHeight() + border) - viewHeight; - - int ch = this.getContentHeight(); - - if (ch == 0) { ch = 1; } - int height = (viewHeight * viewHeight) / ch; - - if (height < 32) height = 32; - - if (height > viewHeight - border*2) - height = viewHeight - border*2; - - int barTop = (int)this.scrollDistance * (viewHeight - height) / extraHeight + this.top; - if (barTop < this.top) - { - barTop = this.top; - } - - GlStateManager.disableTexture2D(); - worldr.begin(GL11.GL_QUADS, DefaultVertexFormats.POSITION_TEX_COLOR); - worldr.pos(scrollBarLeft, this.bottom, 0.0D).tex(0.0D, 1.0D).color(0x00, 0x00, 0x00, 0xFF).endVertex(); - worldr.pos(scrollBarRight, this.bottom, 0.0D).tex(1.0D, 1.0D).color(0x00, 0x00, 0x00, 0xFF).endVertex(); - worldr.pos(scrollBarRight, this.top, 0.0D).tex(1.0D, 0.0D).color(0x00, 0x00, 0x00, 0xFF).endVertex(); - worldr.pos(scrollBarLeft, this.top, 0.0D).tex(0.0D, 0.0D).color(0x00, 0x00, 0x00, 0xFF).endVertex(); - tess.draw(); - worldr.begin(GL11.GL_QUADS, DefaultVertexFormats.POSITION_TEX_COLOR); - worldr.pos(scrollBarLeft, barTop + height, 0.0D).tex(0.0D, 1.0D).color(0x80, 0x80, 0x80, 0xFF).endVertex(); - worldr.pos(scrollBarRight, barTop + height, 0.0D).tex(1.0D, 1.0D).color(0x80, 0x80, 0x80, 0xFF).endVertex(); - worldr.pos(scrollBarRight, barTop, 0.0D).tex(1.0D, 0.0D).color(0x80, 0x80, 0x80, 0xFF).endVertex(); - worldr.pos(scrollBarLeft, barTop, 0.0D).tex(0.0D, 0.0D).color(0x80, 0x80, 0x80, 0xFF).endVertex(); - tess.draw(); - worldr.begin(GL11.GL_QUADS, DefaultVertexFormats.POSITION_TEX_COLOR); - worldr.pos(scrollBarLeft, barTop + height - 1, 0.0D).tex(0.0D, 1.0D).color(0xC0, 0xC0, 0xC0, 0xFF).endVertex(); - worldr.pos(scrollBarRight - 1, barTop + height - 1, 0.0D).tex(1.0D, 1.0D).color(0xC0, 0xC0, 0xC0, 0xFF).endVertex(); - worldr.pos(scrollBarRight - 1, barTop, 0.0D).tex(1.0D, 0.0D).color(0xC0, 0xC0, 0xC0, 0xFF).endVertex(); - worldr.pos(scrollBarLeft, barTop, 0.0D).tex(0.0D, 0.0D).color(0xC0, 0xC0, 0xC0, 0xFF).endVertex(); - tess.draw(); - - this.drawScreen(mouseX, mouseY); - GlStateManager.enableTexture2D(); - GlStateManager.shadeModel(GL11.GL_FLAT); - GlStateManager.enableAlpha(); - GlStateManager.disableBlend(); - GL11.glDisable(GL11.GL_SCISSOR_TEST); - } - - private void resetScrollbar(int viewHeight, int border) { - this.scrollFactor = -1.0F; - int scrollHeight = this.getContentHeight() - viewHeight - border; - if (scrollHeight < 1) scrollHeight = 1; - - int var13 = (int)((float)(viewHeight * viewHeight) / (float)this.getContentHeight()); - - if (var13 < 32) var13 = 32; - if (var13 > viewHeight - border*2) - var13 = viewHeight - border*2; - - this.scrollFactor /= (float)(viewHeight - var13) / (float)scrollHeight; - } - - protected void drawGradientRect(int left, int top, int right, int bottom, int color1, int color2) - { - GuiUtils.drawGradientRect(0, left, top, right, bottom, color1, color2); - } - - protected void drawItemStack(FontRenderer fontRenderer, ItemStack stack, int x, int y) { - RenderHelper.disableStandardItemLighting(); - RenderHelper.enableGUIStandardItemLighting(); - - GlStateManager.translate(0.0F, 0.0F, 32.0F); - client.getRenderItem().renderItemAndEffectIntoGUI(stack, x, y); - - GlStateManager.scale(0.5, 0.5, 0.5); - fontRenderer.drawString("" + stack.getCount(), (x+12)*2, (y+12)*2, 0xFFFFFF); - GlStateManager.scale(2.0, 2.0, 2.0); - GlStateManager.translate(0.0F, 0.0F, -32.0F); - - RenderHelper.enableStandardItemLighting(); - } - - protected void drawItemStack(ItemStack stack, int x, int y) { - RenderHelper.disableStandardItemLighting(); - RenderHelper.enableGUIStandardItemLighting(); - - GlStateManager.translate(0.0F, 0.0F, 32.0F); - client.getRenderItem().renderItemIntoGUI(stack, x, y); - - GlStateManager.translate(0.0F, 0.0F, -32.0F); - - RenderHelper.enableStandardItemLighting(); - } - - - private void renderItemWithCol(ItemStack stack, int x, int y) { - Color colorFilter = new Color(255, 0, 0, 128); // red with 50% alpha - RenderItem renderItem = client.getRenderItem(); - IBakedModel model = renderItem.getItemModelWithOverrides(stack, null, null); - int color = colorFilter.getRGB() & 0xFFFFFF; - - renderItem.renderQuads(Tessellator.getInstance().getBuffer(), model.getQuads(null, null, 0), color, stack); - - renderItem.renderItemIntoGUI(stack, x, y); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/GuiTarDistiller.java b/src/main/java/com/silvaniastudios/roads/client/gui/GuiTarDistiller.java deleted file mode 100644 index b00b00da..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/GuiTarDistiller.java +++ /dev/null @@ -1,185 +0,0 @@ -package com.silvaniastudios.roads.client.gui; - -import java.util.Arrays; -import java.util.List; - -import org.lwjgl.opengl.GL11; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerContainer; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerEntity; -import com.silvaniastudios.roads.items.FRItems; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.GlStateManager; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraft.client.renderer.vertex.DefaultVertexFormats; -import net.minecraft.client.resources.I18n; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.text.TextFormatting; -import net.minecraftforge.fluids.FluidTank; - -public class GuiTarDistiller extends GuiContainer { - - private static final ResourceLocation guiTextures = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/tar_distiller.png"); - private TarDistillerEntity tileEntity; - private boolean electric; - - public GuiTarDistiller(TarDistillerEntity tileEntity, TarDistillerContainer container, boolean electric) { - super(container); - xSize = 196; - ySize = 208; - this.tileEntity = tileEntity; - this.electric = electric; - } - - @Override - protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) { - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - - drawTooltip(2, left, top, mouseX, mouseY); - if (electric) { - fontRenderer.drawString(I18n.format("roads.gui.electric_tar_distiller.name"), 32, 6, 4210752); - } else { - fontRenderer.drawString(I18n.format("roads.gui.tar_distiller.name"), 32, 6, 4210752); - } - } - - @Override - protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) { - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - mc.getTextureManager().bindTexture(guiTextures); - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - drawTexturedModalRect(left, top, 0, 0, xSize, ySize); - drawTexturedModalRect(left+176, top+62, 176, 62, 20, 54); - if (electric) { - drawTexturedModalRect(left+xSize-23, top, 196, 0, 23, 116); - } - drawFluid(left + 8, top + 8, tileEntity.fluidInput); - drawFluid(left + 122, top + 8, tileEntity.fluidOutput1); - drawFluid(left + 148, top + 8, tileEntity.fluidOutput2); - - drawFuel(left, top); - drawProgress(left, top); - } - - @Override - public void drawScreen(int mouseX, int mouseY, float partialTicks) { - this.drawDefaultBackground(); - super.drawScreen(mouseX, mouseY, partialTicks); - this.renderHoveredToolTip(mouseX, mouseY); - } - - private void drawFuel(int left, int top) { - if (electric) { - TarDistillerElectricEntity tdee = (TarDistillerElectricEntity) tileEntity; - int p = getPercentage(tdee.energy.getEnergyStored(), tdee.energy.getMaxEnergyStored()); - int x = Math.round(p / 2.5F); - if (p == 100) { x = 42; } - drawTexturedModalRect(left + 175, top + 7 + (42-x), 242, 42-x, 14, x); - } else { - int p = getPercentage(tileEntity.fuel_remaining, tileEntity.last_fuel_cap); - int x = Math.round(p / 7.0F); - drawTexturedModalRect(left + 175, top + 11 + (14-x), 228, 14-x, 14, x); - } - } - - private void drawProgress(int left, int top) { - int p = getPercentage(tileEntity.timerCount, RoadsConfig.machine.tarDistillerTickRate); - int x = Math.round(p * 1.6F); - drawTexturedModalRect(left + 8, top + 116, 0, 252, x, 4); - } - - private void drawTooltip(int col, int left, int top, int mouseX, int mouseY) { - if (mouseX >= (left + 8) && mouseX <= (left + 28) && mouseY >= (top + 8) && mouseY <= (top + 108)) { this.drawHoveringText(tileEntity.fluidInput.getFluidAmount() + "/" + TarDistillerEntity.TANK_CAP, mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 122) && mouseX <= (left + 142) && mouseY >= (top + 8) && mouseY <= (top + 108)) { this.drawHoveringText(tileEntity.fluidOutput1.getFluidAmount() + "/" + TarDistillerEntity.TANK_CAP, mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 148) && mouseX <= (left + 168) && mouseY >= (top + 8) && mouseY <= (top + 108)) { this.drawHoveringText(tileEntity.fluidOutput2.getFluidAmount() + "/" + TarDistillerEntity.TANK_CAP, mouseX - left, mouseY - top + 15); } - - if (electric) { - TarDistillerElectricEntity tdee = (TarDistillerElectricEntity) tileEntity; - if (mouseX >= (left + 175) && mouseX <= (left + 189) && mouseY >= (top + 7) && mouseY <= (top + 49)) { this.drawHoveringText(tdee.energy.getEnergyStored() + "/" + tdee.energy.getMaxEnergyStored(), mouseX - left, mouseY - top + 15); } - } else { - if (mouseX >= (left + 175) && mouseX <= (left + 189) && mouseY >= (top + 11) && mouseY <= (top + 25)) { this.drawHoveringText(tileEntity.fuel_remaining + "/" + tileEntity.last_fuel_cap, mouseX - left, mouseY - top + 15); } - } - - if (RoadsConfig.general.guiGuide) { - String a = TextFormatting.RESET + " -> " + TextFormatting.GREEN; - List inputList = Arrays.asList( - I18n.format("roads.gui.inputSlot"), - "", - TextFormatting.UNDERLINE + I18n.format("roads.gui.valid"), - TextFormatting.AQUA + new ItemStack(Items.COAL, 1, 0).getDisplayName() + a + new ItemStack(FRItems.coal_coke, 1, 0).getDisplayName()); - - if (mouseX >= (left + 34) && mouseX <= (left + 50) && mouseY >= (top + 30) && mouseY <= (top + 46) && tileEntity.inventory.getStackInSlot(TarDistillerContainer.INPUT).getCount() == 0) { this.drawHoveringText(inputList, mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 34) && mouseX <= (left + 50) && mouseY >= (top + 70) && mouseY <= (top + 86) && tileEntity.inventory.getStackInSlot(TarDistillerContainer.FLUID_IN).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.fluidInputSlot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 34) && mouseX <= (left + 50) && mouseY >= (top + 92) && mouseY <= (top + 108) && tileEntity.inventory.getStackInSlot(TarDistillerContainer.FLUID_IN_BUCKET).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.bucketOutputSlot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 174) && mouseX <= (left + 190) && mouseY >= (top + 30) && mouseY <= (top + 46) && !electric && tileEntity.inventory.getStackInSlot(TarDistillerContainer.FUEL).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.fuelSlot"), mouseX - left, mouseY - top + 15); } - - if (mouseX >= (left + 100) && mouseX <= (left + 116) && mouseY >= (top + 70) && mouseY <= (top + 86) && tileEntity.inventory.getStackInSlot(TarDistillerContainer.FLUID_OUT_1).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.bucketInputSlot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 100) && mouseX <= (left + 116) && mouseY >= (top + 92) && mouseY <= (top + 108) && tileEntity.inventory.getStackInSlot(TarDistillerContainer.FLUID_OUT_1_BUCKET).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.fluidOutputSlot"), mouseX - left, mouseY - top + 15); } - - if (mouseX >= (left + 174) && mouseX <= (left + 190) && mouseY >= (top + 70) && mouseY <= (top + 86) && tileEntity.inventory.getStackInSlot(TarDistillerContainer.FLUID_OUT_2).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.bucketInputSlot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 174) && mouseX <= (left + 190) && mouseY >= (top + 92) && mouseY <= (top + 108) && tileEntity.inventory.getStackInSlot(TarDistillerContainer.FLUID_OUT_2_BUCKET).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.fluidOutputSlot"), mouseX - left, mouseY - top + 15); } - - if (mouseX >= (left + 100) && mouseX <= (left + 116) && mouseY >= (top + 8) && mouseY <= (top + 24) && tileEntity.inventory.getStackInSlot(TarDistillerContainer.OUTPUT_1).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.outputSlot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 100) && mouseX <= (left + 116) && mouseY >= (top + 30) && mouseY <= (top + 46) && tileEntity.inventory.getStackInSlot(TarDistillerContainer.OUTPUT_2).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.outputSlot"), mouseX - left, mouseY - top + 15); } - } - } - - private void drawFluid(int left, int top, FluidTank fluid) { - if (fluid.getFluidAmount() > 0) { - int fillPercent = getPercentage(fluid.getFluidAmount(), TarDistillerEntity.TANK_CAP); - mc.getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); - TextureAtlasSprite texture = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(fluid.getFluid().getFluid().getStill(fluid.getFluid()).toString()); - - for (int i = 0; i < 6; i++) { - drawFluidQuad(left, top+(i*16), 16, 16, texture); - drawFluidQuad(left+16, top+(i*16), 4, 16, texture); - } - - drawFluidQuad(left, top+96, 16, 4, texture); - drawFluidQuad(left+16, top+96, 4, 4, texture); - - mc.getTextureManager().bindTexture(guiTextures); - drawTexturedModalRect(left, top, 8, 8, 20, 100-fillPercent); - } - drawTexturedModalRect(left, top, 236, 156, 20, 100); - } - - private void drawFluidQuad(int x, int y, int width, int height, TextureAtlasSprite texture) { - float minU = texture.getInterpolatedU(0); - float minV = texture.getInterpolatedV(0); - float maxU = texture.getInterpolatedU(width); - float maxV = texture.getInterpolatedV(height); - - Tessellator tessellator = Tessellator.getInstance(); - BufferBuilder worldrenderer = tessellator.getBuffer(); - worldrenderer.begin(GL11.GL_QUADS, DefaultVertexFormats.POSITION_TEX); - worldrenderer.pos((double)x, (double)(y + height), (double)this.zLevel).tex(minU, maxV).endVertex(); - worldrenderer.pos((double)(x + width), (double)(y + height), (double)this.zLevel).tex(maxU, maxV).endVertex(); - worldrenderer.pos((double)(x + width), (double)y, (double)this.zLevel).tex(maxU, minV).endVertex(); - worldrenderer.pos((double)x, (double)y, (double)this.zLevel).tex(minU, minV).endVertex(); - tessellator.draw(); - } - - private int getPercentage(int num, int max) { - float x = (float) num / (float) max; - int y = Math.round(x*100); - if (y > 100) { return 100; } - if (y == 0 && num > 0) { - return 1; - } - return y; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/GuiTarmacCutter.java b/src/main/java/com/silvaniastudios/roads/client/gui/GuiTarmacCutter.java deleted file mode 100644 index 031f77f1..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/GuiTarmacCutter.java +++ /dev/null @@ -1,118 +0,0 @@ -package com.silvaniastudios.roads.client.gui; - -import java.util.Arrays; -import java.util.List; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterContainer; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterEntity; - -import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.client.renderer.GlStateManager; -import net.minecraft.client.resources.I18n; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.text.TextFormatting; - -public class GuiTarmacCutter extends GuiContainer { - - private static final ResourceLocation guiTextures = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/tarmac_cutter.png"); - private TarmacCutterEntity tileEntity; - private boolean electric; - - public GuiTarmacCutter(TarmacCutterEntity tileEntity, TarmacCutterContainer container, boolean electric) { - super(container); - xSize = 176; - ySize = 146; - this.tileEntity = tileEntity; - this.electric = electric; - } - - @Override - public void drawScreen(int mouseX, int mouseY, float partialTicks) { - this.drawDefaultBackground(); - super.drawScreen(mouseX, mouseY, partialTicks); - this.renderHoveredToolTip(mouseX, mouseY); - } - - @Override - protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) { - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - - drawTooltip(2, left, top, mouseX, mouseY); - if (electric) { - fontRenderer.drawString(I18n.format("roads.gui.electric_tarmac_cutter.name"), 6, 6, 4210752); - } else { - fontRenderer.drawString(I18n.format("roads.gui.tarmac_cutter.name"), 6, 6, 4210752); - } - } - - @Override - protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) { - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - mc.getTextureManager().bindTexture(guiTextures); - int left = (width - xSize) / 2; - int top = (height - ySize) / 2; - - drawTexturedModalRect(left, top, 0, 0, xSize, ySize); - if (electric) { - drawTexturedModalRect(left+xSize-25, top, 176, 0, 25, ySize); - } - - drawFuel(left, top); - drawProgress(left, top); - } - - private void drawTooltip(int col, int left, int top, int mouseX, int mouseY) { - if (electric) { - TarmacCutterElectricEntity tcee = (TarmacCutterElectricEntity) tileEntity; - if (mouseX >= (left + 155) && mouseX <= (left + 169) && mouseY >= (top + 7) && mouseY <= (top + 49)) { this.drawHoveringText(tcee.energy.getEnergyStored() + "/" + tcee.energy.getMaxEnergyStored(), mouseX - left, mouseY - top + 15); } - } else { - if (mouseX >= (left + 153) && mouseX <= (left + 167) && mouseY >= (top + 15) && mouseY <= (top + 29)) { this.drawHoveringText(tileEntity.fuel_remaining + "/" + tileEntity.last_fuel_cap, mouseX - left, mouseY - top + 15); } - } - - if (RoadsConfig.general.guiGuide) { - String a = TextFormatting.RESET + " -> " + TextFormatting.GREEN; - List inputList = Arrays.asList( - I18n.format("roads.gui.inputSlot"), - "", - TextFormatting.UNDERLINE + I18n.format("roads.gui.valid"), - TextFormatting.AQUA + I18n.format("roads.gui.road_generic_name") + a + I18n.format("roads.gui.road_generic_name_cut") + ", " + I18n.format("roads.gui.fragment_generic_name")); - - - if (mouseX >= (left + 8) && mouseX <= (left + 24) && mouseY >= (top + 32) && mouseY <= (top + 48) && tileEntity.inventory.getStackInSlot(TarmacCutterContainer.INPUT).getCount() == 0) { this.drawHoveringText(inputList, mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 53) && mouseX <= (left + 69) && mouseY >= (top + 32) && mouseY <= (top + 48) && tileEntity.inventory.getStackInSlot(TarmacCutterContainer.BLADE).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.tarmac_cutter.bladeSlot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 98) && mouseX <= (left + 132) && mouseY >= (top + 32) && mouseY <= (top + 48) && tileEntity.inventory.getStackInSlot(TarmacCutterContainer.OUTPUT_1).getCount() == 0 && tileEntity.inventory.getStackInSlot(TarmacCutterContainer.OUTPUT_2).getCount() == 0) { this.drawHoveringText(I18n.format("roads.gui.outputSlot"), mouseX - left, mouseY - top + 15); } - if (mouseX >= (left + 152) && mouseX <= (left + 168) && mouseY >= (top + 32) && mouseY <= (top + 48) && tileEntity.inventory.getStackInSlot(TarmacCutterContainer.FUEL).getCount() == 0 && !electric) { this.drawHoveringText(I18n.format("roads.gui.fuelSlot"), mouseX - left, mouseY - top + 15); } - } - } - - private void drawFuel(int left, int top) { - if (electric) { - TarmacCutterElectricEntity tcee = (TarmacCutterElectricEntity) tileEntity; - int p = getPercentage(tcee.energy.getEnergyStored(), tcee.energy.getMaxEnergyStored()); - int x = Math.round(p / 2.5F); - if (p == 100) { x = 42; } - drawTexturedModalRect(left + 155, top + 7 + (42-x), 242, 42-x, 14, x); - } else { - int p = getPercentage(tileEntity.fuel_remaining, tileEntity.last_fuel_cap); - int x = Math.round(p / 7.0F); - drawTexturedModalRect(left + 153, top + 15 + (14-x), 229, 14-x, 13, x); - } - } - - private void drawProgress(int left, int top) { - int p = getPercentage(tileEntity.timerCount, RoadsConfig.machine.tarmacCutterTickRate); - int x = Math.round(p * 1.6F); - drawTexturedModalRect(left + 8, top + 54, 0, 252, x, 4); - } - - private int getPercentage(int num, int max) { - float x = (float) num / (float) max; - int y = Math.round(x*100); - if (y > 100) { return 100; } - return y; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/paintgun/GuiPaintGun.java b/src/main/java/com/silvaniastudios/roads/client/gui/paintgun/GuiPaintGun.java deleted file mode 100644 index f11ab96e..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/paintgun/GuiPaintGun.java +++ /dev/null @@ -1,236 +0,0 @@ -package com.silvaniastudios.roads.client.gui.paintgun; - -import java.io.IOException; -import java.util.ArrayList; - -import net.minecraft.util.text.TextFormatting; -import org.lwjgl.opengl.GL11; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerEntity; -import com.silvaniastudios.roads.client.gui.GuiIconButton; -import com.silvaniastudios.roads.items.PaintGun; -import com.silvaniastudios.roads.network.PaintGunUpdatePacket; -import com.silvaniastudios.roads.registries.PaintCategoryList; -import com.silvaniastudios.roads.registries.PaintGunItemRegistry; - -import net.minecraft.client.gui.GuiButton; -import net.minecraft.client.gui.GuiScreen; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumHand; -import net.minecraft.util.ResourceLocation; - -public class GuiPaintGun extends GuiScreen { - - private final int guiWidth = 256; - private final int guiHeight = 200; - - PaintGunCategoryList categoryList; - ArrayList paintLists = new ArrayList(); - ArrayList tooltipList = new ArrayList(); - - private GuiButton whitePaint; - private GuiButton yellowPaint; - private GuiButton redPaint; - - private GuiButton sizeSmall; - private GuiButton sizeLarge; - - private int currentPageId = 0; - private int selectedPageId = 0; - private int selectedSlotId = 0; - private String selectedColour = "white"; //0 = white, 1 = yellow, 2 = red - private boolean isLarge = false; - - private int gun_white = 0; - private int gun_yellow = 0; - private int gun_red = 0; - - private static ResourceLocation texture = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/paint_gun_background.png"); - private static ResourceLocation texture_2 = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/paint_gun_background_2.png"); - - public GuiPaintGun() { - } - - public int getCategoryId() { - return currentPageId; - } - - public int getSelectedCategoryId() { - return selectedPageId; - } - - public int getSlotId() { - return selectedSlotId; - } - - public void setPageId(int id) { - currentPageId = id; - } - - public void setSelectedId(int id) { - selectedPageId = currentPageId; - selectedSlotId = id; - FurenikusRoads.PACKET_CHANNEL.sendToServer(new PaintGunUpdatePacket(selectedSlotId, selectedColour, currentPageId, isLarge)); - } - - public void setCategoryId(int id) { - paintLists.get(currentPageId).setEnabled(false); - currentPageId = id; - paintLists.get(currentPageId).setEnabled(true); - - } - - @Override - public void initGui() { - ItemStack item = mc.player.getHeldItem(EnumHand.MAIN_HAND); - - if (item.getItem() instanceof PaintGun) { - if (item.hasTagCompound()) { - NBTTagCompound nbt = item.getTagCompound(); - selectedColour = nbt.getString("colour"); - currentPageId = nbt.getInteger("pageId"); - selectedPageId = currentPageId; - isLarge = nbt.getBoolean("isLarge"); - - selectedSlotId = nbt.getInteger("selectedId"); - - gun_white = nbt.getInteger("white_paint"); - gun_yellow = nbt.getInteger("yellow_paint"); - gun_red = nbt.getInteger("red_paint"); - } - } - - int guiLeft = (width - guiWidth) / 2; - int guiTop = (height - guiHeight) / 2; - - categoryList = new PaintGunCategoryList(100, 182, guiTop+10, guiLeft+8, 20, width, height, fontRenderer, mc, this); - - for (int i = 0; i < PaintGunItemRegistry.categoryList.size(); i++) { - PaintCategoryList category = PaintGunItemRegistry.categoryList.get(i); - PaintGunPaintList list = new PaintGunPaintList(132, 154, guiTop+10, guiLeft+114, 25, width, height, fontRenderer, mc, this, category.getWhitePaints(), tooltipList); - if (i == currentPageId) { - list.setEnabled(true); - } - paintLists.add(list); - } - - whitePaint = new GuiButton(47, guiLeft + 113, guiTop + 171, 42, 20, "White"); - yellowPaint = new GuiButton(48, guiLeft + 158, guiTop + 171, 43, 20, TextFormatting.YELLOW + "Yellow"); - redPaint = new GuiButton(49, guiLeft + 204, guiTop + 171, 42, 20, TextFormatting.RED + "Red"); - - sizeSmall = new GuiButton(50, guiLeft + 118, guiTop + 140, 60, 20, "Small"); - sizeLarge = new GuiButton(51, guiLeft + 182, guiTop + 140, 60, 20, "Large"); - - buttonList.add(whitePaint); - buttonList.add(yellowPaint); - buttonList.add(redPaint); - - buttonList.add(sizeSmall); - buttonList.add(sizeLarge); - } - - @Override - public boolean doesGuiPauseGame() { - return false; - } - - @Override - public void updateScreen() { - if (selectedColour.equals("white")) { whitePaint.enabled = false; yellowPaint.enabled = true; redPaint.enabled = true; } - if (selectedColour.equals("yellow")) { whitePaint.enabled = true; yellowPaint.enabled = false; redPaint.enabled = true; } - if (selectedColour.equals("red")) { whitePaint.enabled = true; yellowPaint.enabled = true; redPaint.enabled = false; } - - sizeSmall.visible = false; - sizeLarge.visible = false; - } - - @Override - public void drawScreen(int mouseX, int mouseY, float partialTicks) { - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - mc.getTextureManager().bindTexture(texture); - - try { - paintLists.get(currentPageId).handleMouseInput(mouseX, mouseY); - categoryList.handleMouseInput(mouseX, mouseY); - } catch (IOException e) { - e.printStackTrace(); - } - - int guiLeft = (width - guiWidth) / 2; - int guiTop = (height - guiHeight) / 2; - - drawTexturedModalRect(guiLeft, guiTop, 0, 0, guiWidth, guiHeight); - - mc.getTextureManager().bindTexture(texture_2); - drawTexturedModalRect(guiLeft+256, guiTop, 0, 0, 50, 70); - - drawGunFillBar(0, guiLeft, guiTop, gun_white); - drawGunFillBar(1, guiLeft, guiTop, gun_yellow); - drawGunFillBar(2, guiLeft, guiTop, gun_red); - - super.drawScreen(mouseX, mouseY, partialTicks); - - categoryList.drawScreen(mouseX, mouseY, partialTicks); - - for (int i = 0; i < paintLists.size(); i++) { - if (paintLists.get(i).isEnabled()) { - tooltipList.clear(); - paintLists.get(i).drawScreen(mouseX, mouseY, partialTicks); - if (tooltipList.size() > 0) { - drawHoveringText(tooltipList, mouseX, mouseY); - } - } - } - - drawTooltip(guiLeft+256, guiTop, mouseX, mouseY); - } - - public String getSelectedColour() { - return selectedColour; - } - - private void drawTooltip(int left, int top, int mouseX, int mouseY) { - if (mouseX >= (left) && mouseX <= (left + 10) && mouseY >= (top + 10) && mouseY <= (top + 60)) { this.drawHoveringText(gun_white + "/" + PaintFillerEntity.GUN_TANK_CAP, mouseX, mouseY); } - if (mouseX >= (left + 16) && mouseX <= (left + 26) && mouseY >= (top + 10) && mouseY <= (top + 60)) { this.drawHoveringText(gun_yellow + "/" + PaintFillerEntity.GUN_TANK_CAP, mouseX, mouseY); } - if (mouseX >= (left + 32) && mouseX <= (left + 42) && mouseY >= (top + 10) && mouseY <= (top + 60)) { this.drawHoveringText(gun_red + "/" + PaintFillerEntity.GUN_TANK_CAP, mouseX, mouseY); } - } - - private void drawGunFillBar(int col, int left, int top, int fill) { - int p = Math.round(getPercentage(fill, PaintFillerEntity.GUN_TANK_CAP)/2.0F); - drawTexturedModalRect(left + 256 + (col*16), top + 60 - p, 50 + (col*10), 0 + (50 - p), 10, p); - } - - private int getPercentage(int num, int max) { - float x = (float) num / (float) max; - int y = Math.round(x*100); - if (y > 100) { return 100; } - return y; - } - - @Override - protected void actionPerformed(GuiButton button) { - if (button == whitePaint) { selectedColour = "white"; } - if (button == yellowPaint) { selectedColour = "yellow"; } - if (button == redPaint) { selectedColour = "red"; } - - if (button == sizeSmall) { isLarge = false; } - if (button == sizeLarge) { isLarge = true; } - - FurenikusRoads.PACKET_CHANNEL.sendToServer(new PaintGunUpdatePacket(selectedSlotId, selectedColour, selectedPageId, isLarge)); - } - - public PaintBlockBase getSelectionFromId(int sel) { - if (PaintGunItemRegistry.categoryList.size() >= selectedPageId) { - PaintCategoryList cat = PaintGunItemRegistry.categoryList.get(selectedPageId); - if (cat.size() >= sel) { - return cat.getPaint(sel); - } else { - return cat.getPaint(0); - } - } - return PaintGunItemRegistry.categoryList.get(0).getPaint(0); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/paintgun/PaintGunCategoryList.java b/src/main/java/com/silvaniastudios/roads/client/gui/paintgun/PaintGunCategoryList.java deleted file mode 100644 index fa84a0ed..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/paintgun/PaintGunCategoryList.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.silvaniastudios.roads.client.gui.paintgun; - -import org.lwjgl.opengl.GL11; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.gui.GuiScrollingList_Mod; -import com.silvaniastudios.roads.registries.PaintCategoryList; -import com.silvaniastudios.roads.registries.PaintGunItemRegistry; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.FontRenderer; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.util.ResourceLocation; - -public class PaintGunCategoryList extends GuiScrollingList_Mod { - - private FontRenderer fontRenderer; - private Minecraft client; - private GuiPaintGun gui; - - private static final ResourceLocation TEXTURE_WIDGET = new ResourceLocation(FurenikusRoads.MODID, "textures/gui/category_list.png"); - - public PaintGunCategoryList(int width, int height, int top, int left, int entryHeight, int screenWidth, int screenHeight, FontRenderer font, Minecraft mc, GuiPaintGun gui) { - super(mc, width, height, top, height+top, left, entryHeight, screenWidth, screenHeight, null); - this.fontRenderer = font; - this.client = mc; - this.gui = gui; - } - - @Override - protected int getSize() { - return PaintGunItemRegistry.categoryList.size(); - } - - @Override - protected void elementClicked(int index, boolean doubleClick) { - gui.setCategoryId(index); - } - - @Override protected boolean isSelected(int index) { return false; } - @Override protected void drawBackground() {} - - @Override - protected void drawSlot(int slotIdx, int entryRight, int slotTop, int slotBuffer, Tessellator tess) { - GL11.glDisable(GL11.GL_LIGHTING); - GL11.glDisable(GL11.GL_FOG); - GL11.glColor4f(1,1,1,1); - - int left = entryRight - this.listWidth + 7; - PaintCategoryList cat = PaintGunItemRegistry.categoryList.get(slotIdx); - - this.client.getTextureManager().bindTexture(TEXTURE_WIDGET); - - if (slotIdx == gui.getCategoryId()) { - gui.drawTexturedModalRect(left, slotTop, 0, 22, 96, 20); - } else if (this.mouseX >= left && this.mouseX <= entryRight && this.mouseY >= slotTop && this.mouseY <= slotTop + this.slotHeight) { - gui.drawTexturedModalRect(left, slotTop, 0, 44, 96, 20); - } else { - gui.drawTexturedModalRect(left, slotTop, 0, 0, 96, 20); - } - - String n = cat.getCategoryName().substring(0, 1).toUpperCase() + cat.getCategoryName().substring(1); - - fontRenderer.drawString(n, left + (this.listWidth/2) - 3 - (fontRenderer.getStringWidth(n)/2), slotTop + 6, 0xFFFFFF); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/gui/paintgun/PaintGunPaintList.java b/src/main/java/com/silvaniastudios/roads/client/gui/paintgun/PaintGunPaintList.java deleted file mode 100644 index 52003ee0..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/gui/paintgun/PaintGunPaintList.java +++ /dev/null @@ -1,122 +0,0 @@ -package com.silvaniastudios.roads.client.gui.paintgun; - -import java.util.ArrayList; - -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.customs.CustomPaintBlock; -import com.silvaniastudios.roads.items.RoadItemBlock; -import org.lwjgl.opengl.GL11; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.paint.LargeTextPaintBlock; -import com.silvaniastudios.roads.client.gui.GuiScrollingList_Mod; -import com.silvaniastudios.roads.registries.PaintIconObject; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.FontRenderer; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; - -public class PaintGunPaintList extends GuiScrollingList_Mod { - - private FontRenderer fontRenderer; - private Minecraft client; - private GuiPaintGun gui; - private ArrayList paints; - private boolean enabled = false; - - private static final ResourceLocation TEXTURE_WIDGET = new ResourceLocation(FurenikusRoads.MODID, "textures/gui/paint_list.png"); - - public PaintGunPaintList(int width, int height, int top, int left, int entryHeight, int screenWidth, int screenHeight, FontRenderer font, Minecraft mc, GuiPaintGun gui, ArrayList paints, ArrayList tooltipList) { - super(mc, width, height, top, height+top, left, entryHeight, screenWidth, screenHeight, tooltipList); - this.fontRenderer = font; - this.client = mc; - this.gui = gui; - this.paints = paints; - } - - public void setEnabled(boolean b) { - enabled = b; - } - - public boolean isEnabled() { - return enabled; - } - - @Override - protected int getSize() { - return (int) Math.ceil(paints.size() / 5.0); - } - - @Override - protected void elementClicked(int index, boolean doubleClick) { - int slot = (index*5) + ((mouseX - left)/25); - if (slot < paints.size()) { - gui.setSelectedId(slot); - } - } - - @Override protected boolean isSelected(int index) { return false; } - @Override protected void drawBackground() {} - - @Override - protected void drawSlot(int slotIdx, int entryRight, int slotTop, int slotBuffer, Tessellator tess) { - GL11.glDisable(GL11.GL_LIGHTING); - GL11.glDisable(GL11.GL_FOG); - GL11.glColor4f(1,1,1,1); - - int left = entryRight - this.listWidth + 7; - - int slot = slotIdx * 5; - int horizontal = 0; - - this.client.getTextureManager().bindTexture(TEXTURE_WIDGET); - - while (horizontal < 5) { - if (slot+horizontal < paints.size()) { - int yOffset = 0; - - //If it's the current selected slot, set a darker background - if (gui.getCategoryId() == gui.getSelectedCategoryId() && gui.getSlotId() == slot+horizontal) { - yOffset = 48; - } - - PaintIconObject paint = paints.get(slot+horizontal); - ItemStack stack = new ItemStack(paint.getPaint(), 1, paint.getMeta()); - - //If we're hovering over it, put a lighter ring around it - if (mouseY >= slotTop && mouseY <= (slotTop + this.slotHeight)) { - if (mouseX >= left + (horizontal*25) && mouseX <= left + (horizontal*25) + 24) { - yOffset += 24; - - if (stack.getItem() instanceof RoadItemBlock) { - RoadItemBlock ib = (RoadItemBlock) stack.getItem(); - - tooltipList.add(PaintColour.getFromName(gui.getSelectedColour()).getFormat() + ib.getUnformattedDisplayName(stack)); - } - } - } - - if (paint.getPaint().canConnect(paint.getIndex()) || paint.getPaint() instanceof LargeTextPaintBlock && paint.getMeta() != 0) { - gui.drawTexturedModalRect(left + (horizontal*25), slotTop, 24, yOffset, 24, 24); - } else { - gui.drawTexturedModalRect(left + (horizontal*25), slotTop, 0, yOffset, 24, 24); - } - } - horizontal++; - } - - //Iterate the whole list twice because otherwise it breaks the rendering -_- - horizontal = 0; - while (horizontal < 5) { - if (slot+horizontal < paints.size()) { - PaintBlockBase paint = gui.getSelectedColour().equals("white") ? paints.get(slot+horizontal).getPaint() : paints.get(slot+horizontal).getRecolouredPaint(gui.getSelectedColour()); - drawItemStack(new ItemStack(paint, 1, paints.get(slot+horizontal).getMeta()), left + (horizontal*25) + 4, slotTop + 4); - - } - horizontal++; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/CatsEyeDoubleModel.java b/src/main/java/com/silvaniastudios/roads/client/model/CatsEyeDoubleModel.java deleted file mode 100644 index 445ab403..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/CatsEyeDoubleModel.java +++ /dev/null @@ -1,338 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import java.awt.Color; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -import javax.vecmath.Matrix4f; - -import org.apache.commons.lang3.tuple.Pair; - -import com.google.common.primitives.Ints; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.decorative.CatsEyeBlock; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.world.World; - -public class CatsEyeDoubleModel implements IBakedModel { - - private IBakedModel model; - String col; - CatsEyeBlock.EnumCatsEye dir; - float p = 1/16F; - private CatsEyeOverrideList overrideList; - - public CatsEyeDoubleModel(IBakedModel model_ns, String col, CatsEyeBlock.EnumCatsEye dir) { - this.model = model_ns; - this.col = col; - this.dir = dir; - this.overrideList = new CatsEyeOverrideList(this); - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - List quadList = new LinkedList(); - quadList.addAll(model.getQuads(state, side, rand)); - - if (side == null || dir == null || state == null) { - return model.getQuads(state, side, rand); - } - - TextureAtlasSprite tex = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/cats_eye_" + col); - - if (dir == CatsEyeBlock.EnumCatsEye.floor_ew) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.53F*p, 0.125F*p, 2.0617F*p, - 7.53F*p, 0.125F*p, 3.9367F*p, - 7.75F*p, 0.625F*p, 3.9367F*p, - 7.75F*p, 0.625F*p, 2.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.47F*p, 0.125F*p, 3.9367F*p, - 8.47F*p, 0.125F*p, 2.0617F*p, - 8.25F*p, 0.625F*p, 2.0617F*p, - 8.25F*p, 0.625F*p, 3.9367F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.53F*p, 0.125F*p, 12.0617F*p, - 7.53F*p, 0.125F*p, 13.9367F*p, - 7.75F*p, 0.625F*p, 13.9367F*p, - 7.75F*p, 0.625F*p, 12.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.47F*p, 0.125F*p, 13.9367F*p, - 8.47F*p, 0.125F*p, 12.0617F*p, - 8.25F*p, 0.625F*p, 12.0617F*p, - 8.25F*p, 0.625F*p, 13.9367F*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.floor_ns) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2.0617F*p, 0.125F*p, 8.47F*p, - 3.9367F*p, 0.125F*p, 8.47F*p, - 3.9367F*p, 0.625F*p, 8.25F*p, - 2.0617F*p, 0.625F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 3.9367F*p, 0.125F*p, 7.53F*p, - 2.0617F*p, 0.125F*p, 7.53F*p, - 2.0617F*p, 0.625F*p, 7.75F*p, - 3.9367F*p, 0.625F*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 12.0617F*p, 0.125F*p, 8.47F*p, - 13.9367F*p, 0.125F*p, 8.47F*p, - 13.9367F*p, 0.625F*p, 8.25F*p, - 12.0617F*p, 0.625F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 13.9367F*p, 0.125F*p, 7.53F*p, - 12.0617F*p, 0.125F*p, 7.53F*p, - 12.0617F*p, 0.625F*p, 7.75F*p, - 13.9367F*p, 0.625F*p, 7.75F*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.wall_north) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.47F*p, 2.0617F*p, (16-0.125F)*p, - 8.25F*p, 2.0617F*p, (16-0.625F)*p, - 8.25F*p, 3.9367F*p, (16-0.625F)*p, - 8.47F*p, 3.9367F*p, (16-0.125F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.75F*p, 2.0617F*p, (16-0.625F)*p, - 7.53F*p, 2.0617F*p, (16-0.125F)*p, - 7.53F*p, 3.9367F*p, (16-0.125F)*p, - 7.75F*p, 3.9367F*p, (16-0.625F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.47F*p, 12.0617F*p, (16-0.125F)*p, - 8.25F*p, 12.0617F*p, (16-0.625F)*p, - 8.25F*p, 13.9367F*p, (16-0.625F)*p, - 8.47F*p, 13.9367F*p, (16-0.125F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.75F*p, 12.0617F*p, (16-0.625F)*p, - 7.53F*p, 12.0617F*p, (16-0.125F)*p, - 7.53F*p, 13.9367F*p, (16-0.125F)*p, - 7.75F*p, 13.9367F*p, (16-0.625F)*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.wall_south) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.53F*p, 2.0617F*p, 0.125F*p, - 7.75F*p, 2.0617F*p, 0.625F*p, - 7.75F*p, 3.9367F*p, 0.625F*p, - 7.53F*p, 3.9367F*p, 0.125F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.25F*p, 2.0617F*p, 0.625F*p, - 8.47F*p, 2.0617F*p, 0.125F*p, - 8.47F*p, 3.9367F*p, 0.125F*p, - 8.25F*p, 3.9367F*p, 0.625F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.53F*p, 12.0617F*p, 0.125F*p, - 7.75F*p, 12.0617F*p, 0.625F*p, - 7.75F*p, 13.9367F*p, 0.625F*p, - 7.53F*p, 13.9367F*p, 0.125F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.25F*p, 12.0617F*p, 0.625F*p, - 8.47F*p, 12.0617F*p, 0.125F*p, - 8.47F*p, 13.9367F*p, 0.125F*p, - 8.25F*p, 13.9367F*p, 0.625F*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.wall_west) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - (16-0.625F)*p, 2.0617F*p, 8.25F*p, - (16-0.125F)*p, 2.0617F*p, 8.47F*p, - (16-0.125F)*p, 3.9367F*p, 8.47F*p, - (16-0.625F)*p, 3.9367F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - (16-0.125F)*p, 2.0617F*p, 7.53F*p, - (16-0.625F)*p, 2.0617F*p, 7.75F*p, - (16-0.625F)*p, 3.9367F*p, 7.75F*p, - (16-0.125F)*p, 3.9367F*p, 7.53F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - (16-0.625F)*p, 12.0617F*p, 8.25F*p, - (16-0.125F)*p, 12.0617F*p, 8.47F*p, - (16-0.125F)*p, 13.9367F*p, 8.47F*p, - (16-0.625F)*p, 13.9367F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - (16-0.125F)*p, 12.0617F*p, 7.53F*p, - (16-0.625F)*p, 12.0617F*p, 7.75F*p, - (16-0.625F)*p, 13.9367F*p, 7.75F*p, - (16-0.125F)*p, 13.9367F*p, 7.53F*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.wall_east) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 0.625F*p, 2.0617F*p, 7.75F*p, - 0.125F*p, 2.0617F*p, 7.53F*p, - 0.125F*p, 3.9367F*p, 7.53F*p, - 0.625F*p, 3.9367F*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 0.125F*p, 2.0617F*p, 8.47F*p, - 0.625F*p, 2.0617F*p, 8.25F*p, - 0.625F*p, 3.9367F*p, 8.25F*p, - 0.125F*p, 3.9367F*p, 8.47F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 0.625F*p, 12.0617F*p, 7.75F*p, - 0.125F*p, 12.0617F*p, 7.53F*p, - 0.125F*p, 13.9367F*p, 7.53F*p, - 0.625F*p, 13.9367F*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 0.125F*p, 12.0617F*p, 8.47F*p, - 0.625F*p, 12.0617F*p, 8.25F*p, - 0.625F*p, 13.9367F*p, 8.25F*p, - 0.125F*p, 13.9367F*p, 8.47F*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.roof_ew) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.47F*p, (16-0.125F)*p, 2.0617F*p, - 8.47F*p, (16-0.125F)*p, 3.9367F*p, - 8.25F*p, (16-0.625F)*p, 3.9367F*p, - 8.25F*p, (16-0.625F)*p, 2.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.53F*p, (16-0.125F)*p, 3.9367F*p, - 7.53F*p, (16-0.125F)*p, 2.0617F*p, - 7.75F*p, (16-0.625F)*p, 2.0617F*p, - 7.75F*p, (16-0.625F)*p, 3.9367F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.47F*p, (16-0.125F)*p, 12.0617F*p, - 8.47F*p, (16-0.125F)*p, 13.9367F*p, - 8.25F*p, (16-0.625F)*p, 13.9367F*p, - 8.25F*p, (16-0.625F)*p, 12.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.53F*p, (16-0.125F)*p, 13.9367F*p, - 7.53F*p, (16-0.125F)*p, 12.0617F*p, - 7.75F*p, (16-0.625F)*p, 12.0617F*p, - 7.75F*p, (16-0.625F)*p, 13.9367F*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.roof_ns) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2.0617F*p, (16-0.125F)*p, 7.53F*p, - 3.9367F*p, (16-0.125F)*p, 7.53F*p, - 3.9367F*p, (16-0.625F)*p, 7.75F*p, - 2.0617F*p, (16-0.625F)*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 3.9367F*p, (16-0.125F)*p, 8.47F*p, - 2.0617F*p, (16-0.125F)*p, 8.47F*p, - 2.0617F*p, (16-0.625F)*p, 8.25F*p, - 3.9367F*p, (16-0.625F)*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 12.0617F*p, (16-0.125F)*p, 7.53F*p, - 13.9367F*p, (16-0.125F)*p, 7.53F*p, - 13.9367F*p, (16-0.625F)*p, 7.75F*p, - 12.0617F*p, (16-0.625F)*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 13.9367F*p, (16-0.125F)*p, 8.47F*p, - 12.0617F*p, (16-0.125F)*p, 8.47F*p, - 12.0617F*p, (16-0.625F)*p, 8.25F*p, - 13.9367F*p, (16-0.625F)*p, 8.25F*p), 0.007F)); - } - return quadList; - } - - private BakedQuad light(TextureAtlasSprite texture, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4) { - int packednormal; - packednormal = RenderHelper.calculatePackedNormal(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4); - return new BakedQuad(Ints.concat( - RenderHelper.vertexToInts(x1, y1, z1, Color.WHITE.getRGB(), texture, 16, 16, packednormal), - RenderHelper.vertexToInts(x2, y2, z2, Color.WHITE.getRGB(), texture, 16, 0, packednormal), - RenderHelper.vertexToInts(x3, y3, z3, Color.WHITE.getRGB(), texture, 0, 0, packednormal), - RenderHelper.vertexToInts(x4, y4, z4, Color.WHITE.getRGB(), texture, 0, 16, packednormal)), - 0, EnumFacing.SOUTH, texture, true, net.minecraft.client.renderer.vertex.DefaultVertexFormats.ITEM); - } - - @Override - public boolean isAmbientOcclusion() { - return model.isAmbientOcclusion(); - } - - @Override - public boolean isGui3d() { - return model.isGui3d(); - } - - @Override - public boolean isBuiltInRenderer() { - return false; - } - - @Override - public TextureAtlasSprite getParticleTexture() { - return model.getParticleTexture(); - } - - @Override - public ItemOverrideList getOverrides() { - return this.overrideList; - } - - @SuppressWarnings("deprecation") - @Override - public ItemCameraTransforms getItemCameraTransforms() { - return model.getItemCameraTransforms(); - } - - @Override - public Pair handlePerspective(ItemCameraTransforms.TransformType cameraTransformType) { - Matrix4f matrix4f = model.handlePerspective(cameraTransformType).getRight(); - return Pair.of(this, matrix4f); - } - - public CatsEyeDoubleModel setCurrentItemStack(ItemStack stack) { - return this; - } - - private static class CatsEyeOverrideList extends ItemOverrideList { - private CatsEyeDoubleModel model; - - public CatsEyeOverrideList(CatsEyeDoubleModel model) { - super(Collections.emptyList()); - this.model = model; - } - - @Override - public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) { - return this.model.setCurrentItemStack(stack); - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/CatsEyeModel.java b/src/main/java/com/silvaniastudios/roads/client/model/CatsEyeModel.java deleted file mode 100644 index 582f5ea1..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/CatsEyeModel.java +++ /dev/null @@ -1,242 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import java.awt.Color; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -import javax.vecmath.Matrix4f; - -import org.apache.commons.lang3.tuple.Pair; - -import com.google.common.primitives.Ints; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.decorative.CatsEyeBlock; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.world.World; - -public class CatsEyeModel implements IBakedModel { - - private IBakedModel model; - String col; - CatsEyeBlock.EnumCatsEye dir; - float p = 1/16F; - private CatsEyeOverrideList overrideList; - - public CatsEyeModel(IBakedModel model_ns, String col, CatsEyeBlock.EnumCatsEye dir) { - this.model = model_ns; - this.col = col; - this.dir = dir; - this.overrideList = new CatsEyeOverrideList(this); - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - List quadList = new LinkedList(); - quadList.addAll(model.getQuads(state, side, rand)); - - if (side == null || dir == null || state == null) { - return model.getQuads(state, side, rand); - } - - TextureAtlasSprite tex = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/cats_eye_" + col); - - if (dir == CatsEyeBlock.EnumCatsEye.floor_ew) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.53F*p, 0.125F*p, 7.0617F*p, - 7.53F*p, 0.125F*p, 8.9367F*p, - 7.75F*p, 0.625F*p, 8.9367F*p, - 7.75F*p, 0.625F*p, 7.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.47F*p, 0.125F*p, 8.9367F*p, - 8.47F*p, 0.125F*p, 7.0617F*p, - 8.25F*p, 0.625F*p, 7.0617F*p, - 8.25F*p, 0.625F*p, 8.9367F*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.floor_ns) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.0617F*p, 0.125F*p, 8.47F*p, - 8.9367F*p, 0.125F*p, 8.47F*p, - 8.9367F*p, 0.625F*p, 8.25F*p, - 7.0617F*p, 0.625F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.9367F*p, 0.125F*p, 7.53F*p, - 7.0617F*p, 0.125F*p, 7.53F*p, - 7.0617F*p, 0.625F*p, 7.75F*p, - 8.9367F*p, 0.625F*p, 7.75F*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.wall_north) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.47F*p, 7.0617F*p, (16-0.125F)*p, - 8.25F*p, 7.0617F*p, (16-0.625F)*p, - 8.25F*p, 8.9367F*p, (16-0.625F)*p, - 8.47F*p, 8.9367F*p, (16-0.125F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.75F*p, 7.0617F*p, (16-0.625F)*p, - 7.53F*p, 7.0617F*p, (16-0.125F)*p, - 7.53F*p, 8.9367F*p, (16-0.125F)*p, - 7.75F*p, 8.9367F*p, (16-0.625F)*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.wall_south) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.53F*p, 7.0617F*p, 0.125F*p, - 7.75F*p, 7.0617F*p, 0.625F*p, - 7.75F*p, 8.9367F*p, 0.625F*p, - 7.53F*p, 8.9367F*p, 0.125F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.25F*p, 7.0617F*p, 0.625F*p, - 8.47F*p, 7.0617F*p, 0.125F*p, - 8.47F*p, 8.9367F*p, 0.125F*p, - 8.25F*p, 8.9367F*p, 0.625F*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.wall_west) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - (16-0.625F)*p, 7.0617F*p, 8.25F*p, - (16-0.125F)*p, 7.0617F*p, 8.47F*p, - (16-0.125F)*p, 8.9367F*p, 8.47F*p, - (16-0.625F)*p, 8.9367F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - (16-0.125F)*p, 7.0617F*p, 7.53F*p, - (16-0.625F)*p, 7.0617F*p, 7.75F*p, - (16-0.625F)*p, 8.9367F*p, 7.75F*p, - (16-0.125F)*p, 8.9367F*p, 7.53F*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.wall_east) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 0.625F*p, 7.0617F*p, 7.75F*p, - 0.125F*p, 7.0617F*p, 7.53F*p, - 0.125F*p, 8.9367F*p, 7.53F*p, - 0.625F*p, 8.9367F*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 0.125F*p, 7.0617F*p, 8.47F*p, - 0.625F*p, 7.0617F*p, 8.25F*p, - 0.625F*p, 8.9367F*p, 8.25F*p, - 0.125F*p, 8.9367F*p, 8.47F*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.roof_ew) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.47F*p, (16-0.125F)*p, 7.0617F*p, - 8.47F*p, (16-0.125F)*p, 8.9367F*p, - 8.25F*p, (16-0.625F)*p, 8.9367F*p, - 8.25F*p, (16-0.625F)*p, 7.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.53F*p, (16-0.125F)*p, 8.9367F*p, - 7.53F*p, (16-0.125F)*p, 7.0617F*p, - 7.75F*p, (16-0.625F)*p, 7.0617F*p, - 7.75F*p, (16-0.625F)*p, 8.9367F*p), 0.007F)); - } - - if (dir == CatsEyeBlock.EnumCatsEye.roof_ns) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.0617F*p, (16-0.125F)*p, 7.53F*p, - 8.9367F*p, (16-0.125F)*p, 7.53F*p, - 8.9367F*p, (16-0.625F)*p, 7.75F*p, - 7.0617F*p, (16-0.625F)*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.9367F*p, (16-0.125F)*p, 8.47F*p, - 7.0617F*p, (16-0.125F)*p, 8.47F*p, - 7.0617F*p, (16-0.625F)*p, 8.25F*p, - 8.9367F*p, (16-0.625F)*p, 8.25F*p), 0.007F)); - } - return quadList; - } - - private BakedQuad light(TextureAtlasSprite texture, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4) { - int packednormal; - packednormal = RenderHelper.calculatePackedNormal(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4); - return new BakedQuad(Ints.concat( - RenderHelper.vertexToInts(x1, y1, z1, Color.WHITE.getRGB(), texture, 16, 16, packednormal), - RenderHelper.vertexToInts(x2, y2, z2, Color.WHITE.getRGB(), texture, 16, 0, packednormal), - RenderHelper.vertexToInts(x3, y3, z3, Color.WHITE.getRGB(), texture, 0, 0, packednormal), - RenderHelper.vertexToInts(x4, y4, z4, Color.WHITE.getRGB(), texture, 0, 16, packednormal)), - 0, EnumFacing.SOUTH, texture, true, net.minecraft.client.renderer.vertex.DefaultVertexFormats.ITEM); - } - - @Override - public boolean isAmbientOcclusion() { - return model.isAmbientOcclusion(); - } - - @Override - public boolean isGui3d() { - return model.isGui3d(); - } - - @Override - public boolean isBuiltInRenderer() { - return false; - } - - @Override - public TextureAtlasSprite getParticleTexture() { - return model.getParticleTexture(); - } - - @Override - public ItemOverrideList getOverrides() { - return this.overrideList; - } - - @SuppressWarnings("deprecation") - @Override - public ItemCameraTransforms getItemCameraTransforms() { - return model.getItemCameraTransforms(); - } - - @Override - public Pair handlePerspective(ItemCameraTransforms.TransformType cameraTransformType) { - Matrix4f matrix4f = model.handlePerspective(cameraTransformType).getRight(); - return Pair.of(this, matrix4f); - } - - public CatsEyeModel setCurrentItemStack(ItemStack stack) { - return this; - } - - private static class CatsEyeOverrideList extends ItemOverrideList { - private CatsEyeModel model; - - public CatsEyeOverrideList(CatsEyeModel model) { - super(Collections.emptyList()); - this.model = model; - } - - @Override - public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) { - return this.model.setCurrentItemStack(stack); - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/CatsEyeTwoSidedDoubleModel.java b/src/main/java/com/silvaniastudios/roads/client/model/CatsEyeTwoSidedDoubleModel.java deleted file mode 100644 index 7f9da119..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/CatsEyeTwoSidedDoubleModel.java +++ /dev/null @@ -1,554 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import java.awt.Color; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -import javax.vecmath.Matrix4f; - -import org.apache.commons.lang3.tuple.Pair; - -import com.google.common.primitives.Ints; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.decorative.CatsEyeBlockFourWay; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.world.World; - -public class CatsEyeTwoSidedDoubleModel implements IBakedModel { - - private IBakedModel model; - String colLeft; - String colRight; - CatsEyeBlockFourWay.EnumCatsEye dir; - float p = 1/16F; - private CatsEyeOverrideList overrideList; - - public CatsEyeTwoSidedDoubleModel(IBakedModel model_ns, String colLeft, String colRight, CatsEyeBlockFourWay.EnumCatsEye dir) { - this.model = model_ns; - this.colLeft = colLeft; - this.colRight = colRight; - this.dir = dir; - this.overrideList = new CatsEyeOverrideList(this); - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - List quadList = new LinkedList(); - quadList.addAll(model.getQuads(state, side, rand)); - - if (side == null || dir == null || state == null) { - return model.getQuads(state, side, rand); - } - - TextureAtlasSprite texLeft = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/cats_eye_" + colLeft); - TextureAtlasSprite texRight = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/cats_eye_" + colRight); - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.floor_n) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 2.0617F*p, 0.125F*p, 8.47F*p, - 3.9367F*p, 0.125F*p, 8.47F*p, - 3.9367F*p, 0.625F*p, 8.25F*p, - 2.0617F*p, 0.625F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 3.9367F*p, 0.125F*p, 7.53F*p, - 2.0617F*p, 0.125F*p, 7.53F*p, - 2.0617F*p, 0.625F*p, 7.75F*p, - 3.9367F*p, 0.625F*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 12.0617F*p, 0.125F*p, 8.47F*p, - 13.9367F*p, 0.125F*p, 8.47F*p, - 13.9367F*p, 0.625F*p, 8.25F*p, - 12.0617F*p, 0.625F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 13.9367F*p, 0.125F*p, 7.53F*p, - 12.0617F*p, 0.125F*p, 7.53F*p, - 12.0617F*p, 0.625F*p, 7.75F*p, - 13.9367F*p, 0.625F*p, 7.75F*p), 0.007F)); - } - if (dir == CatsEyeBlockFourWay.EnumCatsEye.floor_e) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.53F*p, 0.125F*p, 2.0617F*p, - 7.53F*p, 0.125F*p, 3.9367F*p, - 7.75F*p, 0.625F*p, 3.9367F*p, - 7.75F*p, 0.625F*p, 2.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.47F*p, 0.125F*p, 3.9367F*p, - 8.47F*p, 0.125F*p, 2.0617F*p, - 8.25F*p, 0.625F*p, 2.0617F*p, - 8.25F*p, 0.625F*p, 3.9367F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.53F*p, 0.125F*p, 12.0617F*p, - 7.53F*p, 0.125F*p, 13.9367F*p, - 7.75F*p, 0.625F*p, 13.9367F*p, - 7.75F*p, 0.625F*p, 12.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.47F*p, 0.125F*p, 13.9367F*p, - 8.47F*p, 0.125F*p, 12.0617F*p, - 8.25F*p, 0.625F*p, 12.0617F*p, - 8.25F*p, 0.625F*p, 13.9367F*p), 0.007F)); - } - if (dir == CatsEyeBlockFourWay.EnumCatsEye.floor_s) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 2.0617F*p, 0.125F*p, 8.47F*p, - 3.9367F*p, 0.125F*p, 8.47F*p, - 3.9367F*p, 0.625F*p, 8.25F*p, - 2.0617F*p, 0.625F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 3.9367F*p, 0.125F*p, 7.53F*p, - 2.0617F*p, 0.125F*p, 7.53F*p, - 2.0617F*p, 0.625F*p, 7.75F*p, - 3.9367F*p, 0.625F*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 12.0617F*p, 0.125F*p, 8.47F*p, - 13.9367F*p, 0.125F*p, 8.47F*p, - 13.9367F*p, 0.625F*p, 8.25F*p, - 12.0617F*p, 0.625F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 13.9367F*p, 0.125F*p, 7.53F*p, - 12.0617F*p, 0.125F*p, 7.53F*p, - 12.0617F*p, 0.625F*p, 7.75F*p, - 13.9367F*p, 0.625F*p, 7.75F*p), 0.007F)); - } - if (dir == CatsEyeBlockFourWay.EnumCatsEye.floor_w) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.53F*p, 0.125F*p, 2.0617F*p, - 7.53F*p, 0.125F*p, 3.9367F*p, - 7.75F*p, 0.625F*p, 3.9367F*p, - 7.75F*p, 0.625F*p, 2.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.47F*p, 0.125F*p, 3.9367F*p, - 8.47F*p, 0.125F*p, 2.0617F*p, - 8.25F*p, 0.625F*p, 2.0617F*p, - 8.25F*p, 0.625F*p, 3.9367F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.53F*p, 0.125F*p, 12.0617F*p, - 7.53F*p, 0.125F*p, 13.9367F*p, - 7.75F*p, 0.625F*p, 13.9367F*p, - 7.75F*p, 0.625F*p, 12.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.47F*p, 0.125F*p, 13.9367F*p, - 8.47F*p, 0.125F*p, 12.0617F*p, - 8.25F*p, 0.625F*p, 12.0617F*p, - 8.25F*p, 0.625F*p, 13.9367F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_north_rg) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.47F*p, 2.0617F*p, (16-0.125F)*p, - 8.25F*p, 2.0617F*p, (16-0.625F)*p, - 8.25F*p, 3.9367F*p, (16-0.625F)*p, - 8.47F*p, 3.9367F*p, (16-0.125F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.75F*p, 2.0617F*p, (16-0.625F)*p, - 7.53F*p, 2.0617F*p, (16-0.125F)*p, - 7.53F*p, 3.9367F*p, (16-0.125F)*p, - 7.75F*p, 3.9367F*p, (16-0.625F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.47F*p, 12.0617F*p, (16-0.125F)*p, - 8.25F*p, 12.0617F*p, (16-0.625F)*p, - 8.25F*p, 13.9367F*p, (16-0.625F)*p, - 8.47F*p, 13.9367F*p, (16-0.125F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.75F*p, 12.0617F*p, (16-0.625F)*p, - 7.53F*p, 12.0617F*p, (16-0.125F)*p, - 7.53F*p, 13.9367F*p, (16-0.125F)*p, - 7.75F*p, 13.9367F*p, (16-0.625F)*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_south_rg) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.53F*p, 2.0617F*p, 0.125F*p, - 7.75F*p, 2.0617F*p, 0.625F*p, - 7.75F*p, 3.9367F*p, 0.625F*p, - 7.53F*p, 3.9367F*p, 0.125F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.25F*p, 2.0617F*p, 0.625F*p, - 8.47F*p, 2.0617F*p, 0.125F*p, - 8.47F*p, 3.9367F*p, 0.125F*p, - 8.25F*p, 3.9367F*p, 0.625F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.53F*p, 12.0617F*p, 0.125F*p, - 7.75F*p, 12.0617F*p, 0.625F*p, - 7.75F*p, 13.9367F*p, 0.625F*p, - 7.53F*p, 13.9367F*p, 0.125F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.25F*p, 12.0617F*p, 0.625F*p, - 8.47F*p, 12.0617F*p, 0.125F*p, - 8.47F*p, 13.9367F*p, 0.125F*p, - 8.25F*p, 13.9367F*p, 0.625F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_west_rg) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - (16-0.625F)*p, 2.0617F*p, 8.25F*p, - (16-0.125F)*p, 2.0617F*p, 8.47F*p, - (16-0.125F)*p, 3.9367F*p, 8.47F*p, - (16-0.625F)*p, 3.9367F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - (16-0.125F)*p, 2.0617F*p, 7.53F*p, - (16-0.625F)*p, 2.0617F*p, 7.75F*p, - (16-0.625F)*p, 3.9367F*p, 7.75F*p, - (16-0.125F)*p, 3.9367F*p, 7.53F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - (16-0.625F)*p, 12.0617F*p, 8.25F*p, - (16-0.125F)*p, 12.0617F*p, 8.47F*p, - (16-0.125F)*p, 13.9367F*p, 8.47F*p, - (16-0.625F)*p, 13.9367F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - (16-0.125F)*p, 12.0617F*p, 7.53F*p, - (16-0.625F)*p, 12.0617F*p, 7.75F*p, - (16-0.625F)*p, 13.9367F*p, 7.75F*p, - (16-0.125F)*p, 13.9367F*p, 7.53F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_east_rg) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 0.625F*p, 2.0617F*p, 7.75F*p, - 0.125F*p, 2.0617F*p, 7.53F*p, - 0.125F*p, 3.9367F*p, 7.53F*p, - 0.625F*p, 3.9367F*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 0.125F*p, 2.0617F*p, 8.47F*p, - 0.625F*p, 2.0617F*p, 8.25F*p, - 0.625F*p, 3.9367F*p, 8.25F*p, - 0.125F*p, 3.9367F*p, 8.47F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 0.625F*p, 12.0617F*p, 7.75F*p, - 0.125F*p, 12.0617F*p, 7.53F*p, - 0.125F*p, 13.9367F*p, 7.53F*p, - 0.625F*p, 13.9367F*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 0.125F*p, 12.0617F*p, 8.47F*p, - 0.625F*p, 12.0617F*p, 8.25F*p, - 0.625F*p, 13.9367F*p, 8.25F*p, - 0.125F*p, 13.9367F*p, 8.47F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_north_gr) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.47F*p, 2.0617F*p, (16-0.125F)*p, - 8.25F*p, 2.0617F*p, (16-0.625F)*p, - 8.25F*p, 3.9367F*p, (16-0.625F)*p, - 8.47F*p, 3.9367F*p, (16-0.125F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.75F*p, 2.0617F*p, (16-0.625F)*p, - 7.53F*p, 2.0617F*p, (16-0.125F)*p, - 7.53F*p, 3.9367F*p, (16-0.125F)*p, - 7.75F*p, 3.9367F*p, (16-0.625F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.47F*p, 12.0617F*p, (16-0.125F)*p, - 8.25F*p, 12.0617F*p, (16-0.625F)*p, - 8.25F*p, 13.9367F*p, (16-0.625F)*p, - 8.47F*p, 13.9367F*p, (16-0.125F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.75F*p, 12.0617F*p, (16-0.625F)*p, - 7.53F*p, 12.0617F*p, (16-0.125F)*p, - 7.53F*p, 13.9367F*p, (16-0.125F)*p, - 7.75F*p, 13.9367F*p, (16-0.625F)*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_south_gr) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.53F*p, 2.0617F*p, 0.125F*p, - 7.75F*p, 2.0617F*p, 0.625F*p, - 7.75F*p, 3.9367F*p, 0.625F*p, - 7.53F*p, 3.9367F*p, 0.125F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.25F*p, 2.0617F*p, 0.625F*p, - 8.47F*p, 2.0617F*p, 0.125F*p, - 8.47F*p, 3.9367F*p, 0.125F*p, - 8.25F*p, 3.9367F*p, 0.625F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.53F*p, 12.0617F*p, 0.125F*p, - 7.75F*p, 12.0617F*p, 0.625F*p, - 7.75F*p, 13.9367F*p, 0.625F*p, - 7.53F*p, 13.9367F*p, 0.125F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.25F*p, 12.0617F*p, 0.625F*p, - 8.47F*p, 12.0617F*p, 0.125F*p, - 8.47F*p, 13.9367F*p, 0.125F*p, - 8.25F*p, 13.9367F*p, 0.625F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_west_gr) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - (16-0.625F)*p, 2.0617F*p, 8.25F*p, - (16-0.125F)*p, 2.0617F*p, 8.47F*p, - (16-0.125F)*p, 3.9367F*p, 8.47F*p, - (16-0.625F)*p, 3.9367F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - (16-0.125F)*p, 2.0617F*p, 7.53F*p, - (16-0.625F)*p, 2.0617F*p, 7.75F*p, - (16-0.625F)*p, 3.9367F*p, 7.75F*p, - (16-0.125F)*p, 3.9367F*p, 7.53F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - (16-0.625F)*p, 12.0617F*p, 8.25F*p, - (16-0.125F)*p, 12.0617F*p, 8.47F*p, - (16-0.125F)*p, 13.9367F*p, 8.47F*p, - (16-0.625F)*p, 13.9367F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - (16-0.125F)*p, 12.0617F*p, 7.53F*p, - (16-0.625F)*p, 12.0617F*p, 7.75F*p, - (16-0.625F)*p, 13.9367F*p, 7.75F*p, - (16-0.125F)*p, 13.9367F*p, 7.53F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_east_gr) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 0.625F*p, 2.0617F*p, 7.75F*p, - 0.125F*p, 2.0617F*p, 7.53F*p, - 0.125F*p, 3.9367F*p, 7.53F*p, - 0.625F*p, 3.9367F*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 0.125F*p, 2.0617F*p, 8.47F*p, - 0.625F*p, 2.0617F*p, 8.25F*p, - 0.625F*p, 3.9367F*p, 8.25F*p, - 0.125F*p, 3.9367F*p, 8.47F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 0.625F*p, 12.0617F*p, 7.75F*p, - 0.125F*p, 12.0617F*p, 7.53F*p, - 0.125F*p, 13.9367F*p, 7.53F*p, - 0.625F*p, 13.9367F*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 0.125F*p, 12.0617F*p, 8.47F*p, - 0.625F*p, 12.0617F*p, 8.25F*p, - 0.625F*p, 13.9367F*p, 8.25F*p, - 0.125F*p, 13.9367F*p, 8.47F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.roof_n) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 2.0617F*p, (16-0.125F)*p, 7.53F*p, - 3.9367F*p, (16-0.125F)*p, 7.53F*p, - 3.9367F*p, (16-0.625F)*p, 7.75F*p, - 2.0617F*p, (16-0.625F)*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 3.9367F*p, (16-0.125F)*p, 8.47F*p, - 2.0617F*p, (16-0.125F)*p, 8.47F*p, - 2.0617F*p, (16-0.625F)*p, 8.25F*p, - 3.9367F*p, (16-0.625F)*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 12.0617F*p, (16-0.125F)*p, 7.53F*p, - 13.9367F*p, (16-0.125F)*p, 7.53F*p, - 13.9367F*p, (16-0.625F)*p, 7.75F*p, - 12.0617F*p, (16-0.625F)*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 13.9367F*p, (16-0.125F)*p, 8.47F*p, - 12.0617F*p, (16-0.125F)*p, 8.47F*p, - 12.0617F*p, (16-0.625F)*p, 8.25F*p, - 13.9367F*p, (16-0.625F)*p, 8.25F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.roof_e) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.47F*p, (16-0.125F)*p, 2.0617F*p, - 8.47F*p, (16-0.125F)*p, 3.9367F*p, - 8.25F*p, (16-0.625F)*p, 3.9367F*p, - 8.25F*p, (16-0.625F)*p, 2.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.53F*p, (16-0.125F)*p, 3.9367F*p, - 7.53F*p, (16-0.125F)*p, 2.0617F*p, - 7.75F*p, (16-0.625F)*p, 2.0617F*p, - 7.75F*p, (16-0.625F)*p, 3.9367F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.47F*p, (16-0.125F)*p, 12.0617F*p, - 8.47F*p, (16-0.125F)*p, 13.9367F*p, - 8.25F*p, (16-0.625F)*p, 13.9367F*p, - 8.25F*p, (16-0.625F)*p, 12.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.53F*p, (16-0.125F)*p, 13.9367F*p, - 7.53F*p, (16-0.125F)*p, 12.0617F*p, - 7.75F*p, (16-0.625F)*p, 12.0617F*p, - 7.75F*p, (16-0.625F)*p, 13.9367F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.roof_s) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 2.0617F*p, (16-0.125F)*p, 7.53F*p, - 3.9367F*p, (16-0.125F)*p, 7.53F*p, - 3.9367F*p, (16-0.625F)*p, 7.75F*p, - 2.0617F*p, (16-0.625F)*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 3.9367F*p, (16-0.125F)*p, 8.47F*p, - 2.0617F*p, (16-0.125F)*p, 8.47F*p, - 2.0617F*p, (16-0.625F)*p, 8.25F*p, - 3.9367F*p, (16-0.625F)*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 12.0617F*p, (16-0.125F)*p, 7.53F*p, - 13.9367F*p, (16-0.125F)*p, 7.53F*p, - 13.9367F*p, (16-0.625F)*p, 7.75F*p, - 12.0617F*p, (16-0.625F)*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 13.9367F*p, (16-0.125F)*p, 8.47F*p, - 12.0617F*p, (16-0.125F)*p, 8.47F*p, - 12.0617F*p, (16-0.625F)*p, 8.25F*p, - 13.9367F*p, (16-0.625F)*p, 8.25F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.roof_w) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.47F*p, (16-0.125F)*p, 2.0617F*p, - 8.47F*p, (16-0.125F)*p, 3.9367F*p, - 8.25F*p, (16-0.625F)*p, 3.9367F*p, - 8.25F*p, (16-0.625F)*p, 2.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.53F*p, (16-0.125F)*p, 3.9367F*p, - 7.53F*p, (16-0.125F)*p, 2.0617F*p, - 7.75F*p, (16-0.625F)*p, 2.0617F*p, - 7.75F*p, (16-0.625F)*p, 3.9367F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.47F*p, (16-0.125F)*p, 12.0617F*p, - 8.47F*p, (16-0.125F)*p, 13.9367F*p, - 8.25F*p, (16-0.625F)*p, 13.9367F*p, - 8.25F*p, (16-0.625F)*p, 12.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.53F*p, (16-0.125F)*p, 13.9367F*p, - 7.53F*p, (16-0.125F)*p, 12.0617F*p, - 7.75F*p, (16-0.625F)*p, 12.0617F*p, - 7.75F*p, (16-0.625F)*p, 13.9367F*p), 0.007F)); - } - return quadList; - } - - private BakedQuad light(TextureAtlasSprite texture, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4) { - int packednormal; - packednormal = RenderHelper.calculatePackedNormal(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4); - return new BakedQuad(Ints.concat( - RenderHelper.vertexToInts(x1, y1, z1, Color.WHITE.getRGB(), texture, 16, 16, packednormal), - RenderHelper.vertexToInts(x2, y2, z2, Color.WHITE.getRGB(), texture, 16, 0, packednormal), - RenderHelper.vertexToInts(x3, y3, z3, Color.WHITE.getRGB(), texture, 0, 0, packednormal), - RenderHelper.vertexToInts(x4, y4, z4, Color.WHITE.getRGB(), texture, 0, 16, packednormal)), - 0, EnumFacing.SOUTH, texture, true, net.minecraft.client.renderer.vertex.DefaultVertexFormats.ITEM); - } - - @Override - public boolean isAmbientOcclusion() { - return model.isAmbientOcclusion(); - } - - @Override - public boolean isGui3d() { - return model.isGui3d(); - } - - @Override - public boolean isBuiltInRenderer() { - return false; - } - - @Override - public TextureAtlasSprite getParticleTexture() { - return model.getParticleTexture(); - } - - @Override - public ItemOverrideList getOverrides() { - return this.overrideList; - } - - @SuppressWarnings("deprecation") - @Override - public ItemCameraTransforms getItemCameraTransforms() { - return model.getItemCameraTransforms(); - } - - @Override - public Pair handlePerspective(ItemCameraTransforms.TransformType cameraTransformType) { - Matrix4f matrix4f = model.handlePerspective(cameraTransformType).getRight(); - return Pair.of(this, matrix4f); - } - - public CatsEyeTwoSidedDoubleModel setCurrentItemStack(ItemStack stack) { - return this; - } - - private static class CatsEyeOverrideList extends ItemOverrideList { - private CatsEyeTwoSidedDoubleModel model; - - public CatsEyeOverrideList(CatsEyeTwoSidedDoubleModel model) { - super(Collections.emptyList()); - this.model = model; - } - - @Override - public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) { - return this.model.setCurrentItemStack(stack); - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/CatsEyeTwoSidedModel.java b/src/main/java/com/silvaniastudios/roads/client/model/CatsEyeTwoSidedModel.java deleted file mode 100644 index d6d088bf..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/CatsEyeTwoSidedModel.java +++ /dev/null @@ -1,363 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import java.awt.Color; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -import javax.vecmath.Matrix4f; - -import org.apache.commons.lang3.tuple.Pair; - -import com.google.common.primitives.Ints; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.decorative.CatsEyeBlockFourWay; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.world.World; - -public class CatsEyeTwoSidedModel implements IBakedModel { - - private IBakedModel model; - String colLeft; - String colRight; - CatsEyeBlockFourWay.EnumCatsEye dir; - float p = 1/16F; - private CatsEyeOverrideList overrideList; - - public CatsEyeTwoSidedModel(IBakedModel model_ns, String colLeft, String colRight, CatsEyeBlockFourWay.EnumCatsEye dir) { - this.model = model_ns; - this.colLeft = colLeft; - this.colRight = colRight; - this.dir = dir; - this.overrideList = new CatsEyeOverrideList(this); - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - List quadList = new LinkedList(); - quadList.addAll(model.getQuads(state, side, rand)); - - if (side == null || dir == null || state == null) { - return model.getQuads(state, side, rand); - } - - TextureAtlasSprite texLeft = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/cats_eye_" + colLeft); - TextureAtlasSprite texRight = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/cats_eye_" + colRight); - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.floor_n) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.0617F*p, 0.125F*p, 8.47F*p, - 8.9367F*p, 0.125F*p, 8.47F*p, - 8.9367F*p, 0.625F*p, 8.25F*p, - 7.0617F*p, 0.625F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.9367F*p, 0.125F*p, 7.53F*p, - 7.0617F*p, 0.125F*p, 7.53F*p, - 7.0617F*p, 0.625F*p, 7.75F*p, - 8.9367F*p, 0.625F*p, 7.75F*p), 0.007F)); - } - if (dir == CatsEyeBlockFourWay.EnumCatsEye.floor_e) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.53F*p, 0.125F*p, 7.0617F*p, - 7.53F*p, 0.125F*p, 8.9367F*p, - 7.75F*p, 0.625F*p, 8.9367F*p, - 7.75F*p, 0.625F*p, 7.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.47F*p, 0.125F*p, 8.9367F*p, - 8.47F*p, 0.125F*p, 7.0617F*p, - 8.25F*p, 0.625F*p, 7.0617F*p, - 8.25F*p, 0.625F*p, 8.9367F*p), 0.007F)); - } - if (dir == CatsEyeBlockFourWay.EnumCatsEye.floor_s) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.0617F*p, 0.125F*p, 8.47F*p, - 8.9367F*p, 0.125F*p, 8.47F*p, - 8.9367F*p, 0.625F*p, 8.25F*p, - 7.0617F*p, 0.625F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.9367F*p, 0.125F*p, 7.53F*p, - 7.0617F*p, 0.125F*p, 7.53F*p, - 7.0617F*p, 0.625F*p, 7.75F*p, - 8.9367F*p, 0.625F*p, 7.75F*p), 0.007F)); - } - if (dir == CatsEyeBlockFourWay.EnumCatsEye.floor_w) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.53F*p, 0.125F*p, 7.0617F*p, - 7.53F*p, 0.125F*p, 8.9367F*p, - 7.75F*p, 0.625F*p, 8.9367F*p, - 7.75F*p, 0.625F*p, 7.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.47F*p, 0.125F*p, 8.9367F*p, - 8.47F*p, 0.125F*p, 7.0617F*p, - 8.25F*p, 0.625F*p, 7.0617F*p, - 8.25F*p, 0.625F*p, 8.9367F*p), 0.007F)); - } - - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_north_rg) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.47F*p, 7.0617F*p, (16-0.125F)*p, - 8.25F*p, 7.0617F*p, (16-0.625F)*p, - 8.25F*p, 8.9367F*p, (16-0.625F)*p, - 8.47F*p, 8.9367F*p, (16-0.125F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.75F*p, 7.0617F*p, (16-0.625F)*p, - 7.53F*p, 7.0617F*p, (16-0.125F)*p, - 7.53F*p, 8.9367F*p, (16-0.125F)*p, - 7.75F*p, 8.9367F*p, (16-0.625F)*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_south_rg) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.53F*p, 7.0617F*p, 0.125F*p, - 7.75F*p, 7.0617F*p, 0.625F*p, - 7.75F*p, 8.9367F*p, 0.625F*p, - 7.53F*p, 8.9367F*p, 0.125F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.25F*p, 7.0617F*p, 0.625F*p, - 8.47F*p, 7.0617F*p, 0.125F*p, - 8.47F*p, 8.9367F*p, 0.125F*p, - 8.25F*p, 8.9367F*p, 0.625F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_west_rg) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - (16-0.625F)*p, 7.0617F*p, 8.25F*p, - (16-0.125F)*p, 7.0617F*p, 8.47F*p, - (16-0.125F)*p, 8.9367F*p, 8.47F*p, - (16-0.625F)*p, 8.9367F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - (16-0.125F)*p, 7.0617F*p, 7.53F*p, - (16-0.625F)*p, 7.0617F*p, 7.75F*p, - (16-0.625F)*p, 8.9367F*p, 7.75F*p, - (16-0.125F)*p, 8.9367F*p, 7.53F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_east_rg) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 0.625F*p, 7.0617F*p, 7.75F*p, - 0.125F*p, 7.0617F*p, 7.53F*p, - 0.125F*p, 8.9367F*p, 7.53F*p, - 0.625F*p, 8.9367F*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 0.125F*p, 7.0617F*p, 8.47F*p, - 0.625F*p, 7.0617F*p, 8.25F*p, - 0.625F*p, 8.9367F*p, 8.25F*p, - 0.125F*p, 8.9367F*p, 8.47F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_north_gr) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.47F*p, 7.0617F*p, (16-0.125F)*p, - 8.25F*p, 7.0617F*p, (16-0.625F)*p, - 8.25F*p, 8.9367F*p, (16-0.625F)*p, - 8.47F*p, 8.9367F*p, (16-0.125F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.75F*p, 7.0617F*p, (16-0.625F)*p, - 7.53F*p, 7.0617F*p, (16-0.125F)*p, - 7.53F*p, 8.9367F*p, (16-0.125F)*p, - 7.75F*p, 8.9367F*p, (16-0.625F)*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_south_gr) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.53F*p, 7.0617F*p, 0.125F*p, - 7.75F*p, 7.0617F*p, 0.625F*p, - 7.75F*p, 8.9367F*p, 0.625F*p, - 7.53F*p, 8.9367F*p, 0.125F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.25F*p, 7.0617F*p, 0.625F*p, - 8.47F*p, 7.0617F*p, 0.125F*p, - 8.47F*p, 8.9367F*p, 0.125F*p, - 8.25F*p, 8.9367F*p, 0.625F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_west_gr) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - (16-0.625F)*p, 7.0617F*p, 8.25F*p, - (16-0.125F)*p, 7.0617F*p, 8.47F*p, - (16-0.125F)*p, 8.9367F*p, 8.47F*p, - (16-0.625F)*p, 8.9367F*p, 8.25F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - (16-0.125F)*p, 7.0617F*p, 7.53F*p, - (16-0.625F)*p, 7.0617F*p, 7.75F*p, - (16-0.625F)*p, 8.9367F*p, 7.75F*p, - (16-0.125F)*p, 8.9367F*p, 7.53F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.wall_east_gr) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 0.625F*p, 7.0617F*p, 7.75F*p, - 0.125F*p, 7.0617F*p, 7.53F*p, - 0.125F*p, 8.9367F*p, 7.53F*p, - 0.625F*p, 8.9367F*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 0.125F*p, 7.0617F*p, 8.47F*p, - 0.625F*p, 7.0617F*p, 8.25F*p, - 0.625F*p, 8.9367F*p, 8.25F*p, - 0.125F*p, 8.9367F*p, 8.47F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.roof_n) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.0617F*p, (16-0.125F)*p, 7.53F*p, - 8.9367F*p, (16-0.125F)*p, 7.53F*p, - 8.9367F*p, (16-0.625F)*p, 7.75F*p, - 7.0617F*p, (16-0.625F)*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.9367F*p, (16-0.125F)*p, 8.47F*p, - 7.0617F*p, (16-0.125F)*p, 8.47F*p, - 7.0617F*p, (16-0.625F)*p, 8.25F*p, - 8.9367F*p, (16-0.625F)*p, 8.25F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.roof_e) { - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.47F*p, (16-0.125F)*p, 7.0617F*p, - 8.47F*p, (16-0.125F)*p, 8.9367F*p, - 8.25F*p, (16-0.625F)*p, 8.9367F*p, - 8.25F*p, (16-0.625F)*p, 7.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.53F*p, (16-0.125F)*p, 8.9367F*p, - 7.53F*p, (16-0.125F)*p, 7.0617F*p, - 7.75F*p, (16-0.625F)*p, 7.0617F*p, - 7.75F*p, (16-0.625F)*p, 8.9367F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.roof_s) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 7.0617F*p, (16-0.125F)*p, 7.53F*p, - 8.9367F*p, (16-0.125F)*p, 7.53F*p, - 8.9367F*p, (16-0.625F)*p, 7.75F*p, - 7.0617F*p, (16-0.625F)*p, 7.75F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 8.9367F*p, (16-0.125F)*p, 8.47F*p, - 7.0617F*p, (16-0.125F)*p, 8.47F*p, - 7.0617F*p, (16-0.625F)*p, 8.25F*p, - 8.9367F*p, (16-0.625F)*p, 8.25F*p), 0.007F)); - } - - if (dir == CatsEyeBlockFourWay.EnumCatsEye.roof_w) { - quadList.add(RenderHelper.setBrightTexture(light(texRight, - //SW SE NE NW - 8.47F*p, (16-0.125F)*p, 7.0617F*p, - 8.47F*p, (16-0.125F)*p, 8.9367F*p, - 8.25F*p, (16-0.625F)*p, 8.9367F*p, - 8.25F*p, (16-0.625F)*p, 7.0617F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(texLeft, - //SW SE NE NW - 7.53F*p, (16-0.125F)*p, 8.9367F*p, - 7.53F*p, (16-0.125F)*p, 7.0617F*p, - 7.75F*p, (16-0.625F)*p, 7.0617F*p, - 7.75F*p, (16-0.625F)*p, 8.9367F*p), 0.007F)); - } - return quadList; - } - - private BakedQuad light(TextureAtlasSprite texture, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4) { - int packednormal; - packednormal = RenderHelper.calculatePackedNormal(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4); - return new BakedQuad(Ints.concat( - RenderHelper.vertexToInts(x1, y1, z1, Color.WHITE.getRGB(), texture, 16, 16, packednormal), - RenderHelper.vertexToInts(x2, y2, z2, Color.WHITE.getRGB(), texture, 16, 0, packednormal), - RenderHelper.vertexToInts(x3, y3, z3, Color.WHITE.getRGB(), texture, 0, 0, packednormal), - RenderHelper.vertexToInts(x4, y4, z4, Color.WHITE.getRGB(), texture, 0, 16, packednormal)), - 0, EnumFacing.SOUTH, texture, true, net.minecraft.client.renderer.vertex.DefaultVertexFormats.ITEM); - } - - @Override - public boolean isAmbientOcclusion() { - return model.isAmbientOcclusion(); - } - - @Override - public boolean isGui3d() { - return model.isGui3d(); - } - - @Override - public boolean isBuiltInRenderer() { - return false; - } - - @Override - public TextureAtlasSprite getParticleTexture() { - return model.getParticleTexture(); - } - - @Override - public ItemOverrideList getOverrides() { - return this.overrideList; - } - - @SuppressWarnings("deprecation") - @Override - public ItemCameraTransforms getItemCameraTransforms() { - return model.getItemCameraTransforms(); - } - - @Override - public Pair handlePerspective(ItemCameraTransforms.TransformType cameraTransformType) { - Matrix4f matrix4f = model.handlePerspective(cameraTransformType).getRight(); - return Pair.of(this, matrix4f); - } - - public CatsEyeTwoSidedModel setCurrentItemStack(ItemStack stack) { - return this; - } - - private static class CatsEyeOverrideList extends ItemOverrideList { - private CatsEyeTwoSidedModel model; - - public CatsEyeOverrideList(CatsEyeTwoSidedModel model) { - super(Collections.emptyList()); - this.model = model; - } - - @Override - public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) { - return this.model.setCurrentItemStack(stack); - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/CrusherBakedModel.java b/src/main/java/com/silvaniastudios/roads/client/model/CrusherBakedModel.java deleted file mode 100644 index 145447ea..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/CrusherBakedModel.java +++ /dev/null @@ -1,179 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import java.awt.Color; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -import javax.vecmath.Matrix4f; - -import org.apache.commons.lang3.tuple.Pair; - -import com.google.common.primitives.Ints; -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.world.World; - -public class CrusherBakedModel implements IBakedModel { - - private IBakedModel model; - float p = 1/16F; - private CrusherOverrideList overrideList; - String rot; - - public CrusherBakedModel(IBakedModel model, String rot) { - this.model = model; - this.rot = rot; - this.overrideList = new CrusherOverrideList(this); - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - List quadList = new LinkedList(); - quadList.addAll(model.getQuads(state, side, rand)); - - if (side == null) { - return model.getQuads(state, side, rand); - } - - TextureAtlasSprite tex = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/machine_vent_back_on"); - - if (rot.equalsIgnoreCase("north")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2.24F*p, 1.5F *p, 2.75F *p, - 2.24F*p, 1.5F *p, 13.25F*p, - 2.24F*p, 6.75F*p, 13.25F*p, - 2.24F*p, 6.75F*p, 2.75F *p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 13.76F*p, 1.5F *p, 13.25F*p, - 13.76F*p, 1.5F *p, 2.75F *p, - 13.76F*p, 6.75F*p, 2.75F *p, - 13.76F*p, 6.75F*p, 13.25F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("west")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 13.25F*p, 1.5F *p, 2.24F*p, - 2.75F *p, 1.5F *p, 2.24F*p, - 2.75F *p, 6.75F*p, 2.24F*p, - 13.25F*p, 6.75F*p, 2.24F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2.75F *p, 1.5F *p, 13.76F*p, - 13.25F*p, 1.5F *p, 13.76F*p, - 13.25F*p, 6.75F*p, 13.76F*p, - 2.75F *p, 6.75F*p, 13.76F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("south")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2.24F*p, 1.5F *p, 2.75F *p, - 2.24F*p, 1.5F *p, 13.25F*p, - 2.24F*p, 6.75F*p, 13.25F*p, - 2.24F*p, 6.75F*p, 2.75F *p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 13.76F*p, 1.5F *p, 13.25F*p, - 13.76F*p, 1.5F *p, 2.75F *p, - 13.76F*p, 6.75F*p, 2.75F *p, - 13.76F*p, 6.75F*p, 13.25F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("east")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 13.25F*p, 1.5F *p, 2.24F*p, - 2.75F *p, 1.5F *p, 2.24F*p, - 2.75F *p, 6.75F*p, 2.24F*p, - 13.25F*p, 6.75F*p, 2.24F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2.75F *p, 1.5F *p, 13.76F*p, - 13.25F*p, 1.5F *p, 13.76F*p, - 13.25F*p, 6.75F*p, 13.76F*p, - 2.75F *p, 6.75F*p, 13.76F*p), 0.007F)); - } - return quadList; - } - - private BakedQuad light(TextureAtlasSprite texture, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4) { - int packednormal; - packednormal = RenderHelper.calculatePackedNormal(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4); - return new BakedQuad(Ints.concat( - RenderHelper.vertexToInts(x1, y1, z1, Color.WHITE.getRGB(), texture, 16, 16, packednormal), - RenderHelper.vertexToInts(x2, y2, z2, Color.WHITE.getRGB(), texture, 16, 0, packednormal), - RenderHelper.vertexToInts(x3, y3, z3, Color.WHITE.getRGB(), texture, 0, 0, packednormal), - RenderHelper.vertexToInts(x4, y4, z4, Color.WHITE.getRGB(), texture, 0, 16, packednormal)), - 0, EnumFacing.SOUTH, texture, true, net.minecraft.client.renderer.vertex.DefaultVertexFormats.ITEM); - } - - @Override - public boolean isAmbientOcclusion() { - return model.isAmbientOcclusion(); - } - - @Override - public boolean isGui3d() { - return model.isGui3d(); - } - - @Override - public boolean isBuiltInRenderer() { - return false; - } - - @Override - public TextureAtlasSprite getParticleTexture() { - return model.getParticleTexture(); - } - - @Override - public ItemOverrideList getOverrides() { - return this.overrideList; - } - - @SuppressWarnings("deprecation") - @Override - public ItemCameraTransforms getItemCameraTransforms() { - return model.getItemCameraTransforms(); - } - - @Override - public Pair handlePerspective(ItemCameraTransforms.TransformType cameraTransformType) { - Matrix4f matrix4f = model.handlePerspective(cameraTransformType).getRight(); - return Pair.of(this, matrix4f); - } - - public CrusherBakedModel setCurrentItemStack(ItemStack stack) { - return this; - } - - private static class CrusherOverrideList extends ItemOverrideList { - private CrusherBakedModel model; - - public CrusherOverrideList(CrusherBakedModel model) { - super(Collections.emptyList()); - this.model = model; - } - - @Override - public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) { - return this.model.setCurrentItemStack(stack); - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/CrusherRenderer.java b/src/main/java/com/silvaniastudios/roads/client/model/CrusherRenderer.java deleted file mode 100644 index 90eb66df..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/CrusherRenderer.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherEntity; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraftforge.client.model.animation.AnimationTESR; - -public class CrusherRenderer extends AnimationTESR { - - private static float p = 1/16F; //one "pixel" - - @Override - public void renderTileEntityFast(CrusherEntity te, double x, double y, double z, float partialTicks, int destroyStage, float partial, BufferBuilder buffer) { - int meta = te.getBlockType().getMetaFromState(te.getState()); - if (!te.inventory.getStackInSlot(0).isEmpty()) { renderBlock(buffer, x, y, z, meta, te.inventory.getStackInSlot(0), 0); } - } - - @SuppressWarnings("deprecation") - private static void renderBlock(final BufferBuilder buffer, double x, double y, double z, int meta, ItemStack stack, int slot) { - if (stack.getItem() instanceof ItemBlock) { - ItemBlock ib = (ItemBlock) stack.getItem(); - IBlockState state = ib.getBlock().getStateFromMeta(stack.getItemDamage()); - IBakedModel model = Minecraft.getMinecraft().getBlockRendererDispatcher().getBlockModelShapes().getModelForState(state); - TextureAtlasSprite sprite = model.getParticleTexture(); - - if (meta == 0) { RenderHelper.renderCube(buffer, x, y, z, 6F*p, 4.5F*p, 7F*p, 4F*p, 4F*p, 4F*p, sprite); } - if (meta == 1) { RenderHelper.renderCube(buffer, x, y, z, 7F*p, 4.5F*p, 6F*p, 4F*p, 4F*p, 4F*p, sprite); } - if (meta == 2) { RenderHelper.renderCube(buffer, x, y, z, 6F*p, 4.5F*p, 5F*p, 4F*p, 4F*p, 4F*p, sprite); } - if (meta == 3) { RenderHelper.renderCube(buffer, x, y, z, 5F*p, 4.5F*p, 6F*p, 4F*p, 4F*p, 4F*p, sprite); } - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/DiagonalRoadModel.java b/src/main/java/com/silvaniastudios/roads/client/model/DiagonalRoadModel.java deleted file mode 100644 index c4e5f5ca..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/DiagonalRoadModel.java +++ /dev/null @@ -1,182 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import java.awt.Color; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -import javax.vecmath.Matrix4f; - -import org.apache.commons.lang3.tuple.Pair; - -import com.google.common.primitives.Ints; -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.world.World; - -public class DiagonalRoadModel implements IBakedModel { - - private IBakedModel model; - float p = 1/16F; - private CrusherOverrideList overrideList; - String rot; - - public DiagonalRoadModel(IBakedModel model, String rot) { - this.model = model; - this.rot = rot; - this.overrideList = new CrusherOverrideList(this); - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - //state.getBlock().getAc - - - List quadList = new LinkedList(); - quadList.addAll(model.getQuads(state, side, rand)); - - if (side == null) { - return model.getQuads(state, side, rand); - } - - TextureAtlasSprite tex = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/machine_vent_back_on"); - - if (rot.equalsIgnoreCase("north")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2.24F*p, 1.5F *p, 2.75F *p, - 2.24F*p, 1.5F *p, 13.25F*p, - 2.24F*p, 6.75F*p, 13.25F*p, - 2.24F*p, 6.75F*p, 2.75F *p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 13.76F*p, 1.5F *p, 13.25F*p, - 13.76F*p, 1.5F *p, 2.75F *p, - 13.76F*p, 6.75F*p, 2.75F *p, - 13.76F*p, 6.75F*p, 13.25F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("west")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 13.25F*p, 1.5F *p, 2.24F*p, - 2.75F *p, 1.5F *p, 2.24F*p, - 2.75F *p, 6.75F*p, 2.24F*p, - 13.25F*p, 6.75F*p, 2.24F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2.75F *p, 1.5F *p, 13.76F*p, - 13.25F*p, 1.5F *p, 13.76F*p, - 13.25F*p, 6.75F*p, 13.76F*p, - 2.75F *p, 6.75F*p, 13.76F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("south")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2.24F*p, 1.5F *p, 2.75F *p, - 2.24F*p, 1.5F *p, 13.25F*p, - 2.24F*p, 6.75F*p, 13.25F*p, - 2.24F*p, 6.75F*p, 2.75F *p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 13.76F*p, 1.5F *p, 13.25F*p, - 13.76F*p, 1.5F *p, 2.75F *p, - 13.76F*p, 6.75F*p, 2.75F *p, - 13.76F*p, 6.75F*p, 13.25F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("east")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 13.25F*p, 1.5F *p, 2.24F*p, - 2.75F *p, 1.5F *p, 2.24F*p, - 2.75F *p, 6.75F*p, 2.24F*p, - 13.25F*p, 6.75F*p, 2.24F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2.75F *p, 1.5F *p, 13.76F*p, - 13.25F*p, 1.5F *p, 13.76F*p, - 13.25F*p, 6.75F*p, 13.76F*p, - 2.75F *p, 6.75F*p, 13.76F*p), 0.007F)); - } - return quadList; - } - - private BakedQuad light(TextureAtlasSprite texture, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4) { - int packednormal; - packednormal = RenderHelper.calculatePackedNormal(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4); - return new BakedQuad(Ints.concat( - RenderHelper.vertexToInts(x1, y1, z1, Color.WHITE.getRGB(), texture, 16, 16, packednormal), - RenderHelper.vertexToInts(x2, y2, z2, Color.WHITE.getRGB(), texture, 16, 0, packednormal), - RenderHelper.vertexToInts(x3, y3, z3, Color.WHITE.getRGB(), texture, 0, 0, packednormal), - RenderHelper.vertexToInts(x4, y4, z4, Color.WHITE.getRGB(), texture, 0, 16, packednormal)), - 0, EnumFacing.SOUTH, texture, true, net.minecraft.client.renderer.vertex.DefaultVertexFormats.ITEM); - } - - @Override - public boolean isAmbientOcclusion() { - return model.isAmbientOcclusion(); - } - - @Override - public boolean isGui3d() { - return model.isGui3d(); - } - - @Override - public boolean isBuiltInRenderer() { - return false; - } - - @Override - public TextureAtlasSprite getParticleTexture() { - return model.getParticleTexture(); - } - - @Override - public ItemOverrideList getOverrides() { - return this.overrideList; - } - - @SuppressWarnings("deprecation") - @Override - public ItemCameraTransforms getItemCameraTransforms() { - return model.getItemCameraTransforms(); - } - - @Override - public Pair handlePerspective(ItemCameraTransforms.TransformType cameraTransformType) { - Matrix4f matrix4f = model.handlePerspective(cameraTransformType).getRight(); - return Pair.of(this, matrix4f); - } - - public DiagonalRoadModel setCurrentItemStack(ItemStack stack) { - return this; - } - - private static class CrusherOverrideList extends ItemOverrideList { - private DiagonalRoadModel model; - - public CrusherOverrideList(DiagonalRoadModel model) { - super(Collections.emptyList()); - this.model = model; - } - - @Override - public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) { - return this.model.setCurrentItemStack(stack); - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/ModelBakeHandler.java b/src/main/java/com/silvaniastudios/roads/client/model/ModelBakeHandler.java deleted file mode 100644 index c9712719..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/ModelBakeHandler.java +++ /dev/null @@ -1,218 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.decorative.CatsEyeBlock; -import com.silvaniastudios.roads.blocks.decorative.CatsEyeBlockFourWay; - -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraftforge.client.event.ModelBakeEvent; -import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; - -public class ModelBakeHandler { - - public static final ModelBakeHandler instance = new ModelBakeHandler(); - - private ModelBakeHandler() {}; - - @SubscribeEvent - public void onModelBakeEvent(ModelBakeEvent event) { - bakePaintGunModel(event); - bakeCatsEyeModels(event); - bakeCatsEyeDoubleSidedModels(event); - bakeCrusherFurnace(event); - bakePaintFillerFurnace(event); - bakeRoadFactoryFurnace(event); - bakeTarDistillerFurnace(event); - bakeTarmacCutterFurnace(event); - } - - private void bakePaintGunModel(ModelBakeEvent event) { - Object model = event.getModelRegistry().getObject(PaintGunModel.modelResourceLocation); - - if (model instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) model; - PaintGunModel customModel = new PaintGunModel(existingModel); - event.getModelRegistry().putObject(PaintGunModel.modelResourceLocation, customModel); - } - } - - private void bakeDiagonalRoads(ModelBakeEvent event) { - String[] facing = new String[] {"north", "east", "south", "west"}; - - for (int i = 0; i < facing.length; i++) { - ModelResourceLocation mrl = new ModelResourceLocation(FurenikusRoads.MODID + ":road_block_diagonal_1_1", "facing=" + facing[i]); - Object model = event.getModelRegistry().getObject(mrl); - - if (model instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) model; - CrusherBakedModel customModel = new CrusherBakedModel(existingModel, facing[i]); - event.getModelRegistry().putObject(mrl, customModel); - } - } - } - - private void bakeCatsEyeDoubleSidedModels(ModelBakeEvent event) { - String[] catsEyeList = new String[] {"cats_eye_red_green", "cats_eye_white_red", "cats_eye_white_yellow", "cats_eye_white_green", "cats_eye_yellow_red"}; - - for (int i = 0; i < catsEyeList.length; i++) { - String l = "red"; - String r = "green"; - - if (i == 1 || i == 2 || i == 3) { l = "white"; } - if (i == 1) { r = "red"; } - if (i == 2) { r = "yellow"; } - if (i == 3) { r = "green"; } - if (i == 4) { l = "yellow"; r = "red"; } - - for (int j = 0; j < CatsEyeBlockFourWay.EnumCatsEye.values().length; j++) { - ModelResourceLocation mrl = new ModelResourceLocation(FurenikusRoads.MODID + ":" + catsEyeList[i], "eye_type=" + CatsEyeBlockFourWay.EnumCatsEye.byMetadata(j)); - Object cats_eye = event.getModelRegistry().getObject(mrl); - - if (cats_eye instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) cats_eye; - CatsEyeTwoSidedModel customModel = new CatsEyeTwoSidedModel(existingModel, l, r, CatsEyeBlockFourWay.EnumCatsEye.byMetadata(j)); - event.getModelRegistry().putObject(mrl, customModel); - } - - ModelResourceLocation mrl_double = new ModelResourceLocation(FurenikusRoads.MODID + ":" + catsEyeList[i] + "_double", "eye_type=" + CatsEyeBlockFourWay.EnumCatsEye.byMetadata(j)); - Object cats_eye_double = event.getModelRegistry().getObject(mrl_double); - - if (cats_eye_double instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) cats_eye_double; - CatsEyeTwoSidedDoubleModel customModel = new CatsEyeTwoSidedDoubleModel(existingModel, l, r, CatsEyeBlockFourWay.EnumCatsEye.byMetadata(j)); - event.getModelRegistry().putObject(mrl_double, customModel); - } - } - } - } - - private void bakeCatsEyeModels(ModelBakeEvent event) { - String[] catsEyeList = new String[] {"cats_eye_white", "cats_eye_yellow", "cats_eye_red", "cats_eye_green", "cats_eye_blue"}; - String[] colourList = new String[] {"white", "yellow", "red", "green", "blue"}; - - for (int i = 0; i < catsEyeList.length; i++) { - for (int j = 0; j < CatsEyeBlock.EnumCatsEye.values().length; j++) { - ModelResourceLocation mrl = new ModelResourceLocation(FurenikusRoads.MODID + ":" + catsEyeList[i], "eye_type=" + CatsEyeBlock.EnumCatsEye.byMetadata(j)); - Object cats_eye = event.getModelRegistry().getObject(mrl); - - if (cats_eye instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) cats_eye; - CatsEyeModel customModel = new CatsEyeModel(existingModel, colourList[i], CatsEyeBlock.EnumCatsEye.byMetadata(j)); - event.getModelRegistry().putObject(mrl, customModel); - } - - ModelResourceLocation mrl_double = new ModelResourceLocation(FurenikusRoads.MODID + ":" + catsEyeList[i] + "_double", "eye_type=" + CatsEyeBlock.EnumCatsEye.byMetadata(j)); - Object cats_eye_double = event.getModelRegistry().getObject(mrl_double); - - if (cats_eye_double instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) cats_eye_double; - CatsEyeDoubleModel customModel = new CatsEyeDoubleModel(existingModel, colourList[i], CatsEyeBlock.EnumCatsEye.byMetadata(j)); - event.getModelRegistry().putObject(mrl_double, customModel); - } - } - } - } - - private void bakeCrusherFurnace(ModelBakeEvent event) { - String[] rotations = new String[] {"north", "east", "south", "west"}; - - for (int i = 0; i < rotations.length; i++) { - ModelResourceLocation mrl = new ModelResourceLocation(FurenikusRoads.MODID + ":crusher", "furnace_active=true,rotation=" + rotations[i]); - Object model = event.getModelRegistry().getObject(mrl); - - if (model instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) model; - CrusherBakedModel customModel = new CrusherBakedModel(existingModel, rotations[i]); - event.getModelRegistry().putObject(mrl, customModel); - } - } - } - - private void bakePaintFillerFurnace(ModelBakeEvent event) { - String[] rotations = new String[] {"north", "east", "south", "west"}; - - for (int i = 0; i < rotations.length; i++) { - ModelResourceLocation mrl = new ModelResourceLocation(FurenikusRoads.MODID + ":paint_filler", "furnace_active=true,gun_loaded=false,rotation=" + rotations[i]); - Object model = event.getModelRegistry().getObject(mrl); - - ModelResourceLocation mrl_gunloaded = new ModelResourceLocation(FurenikusRoads.MODID + ":paint_filler", "furnace_active=true,gun_loaded=true,rotation=" + rotations[i]); - Object model_gunloaded = event.getModelRegistry().getObject(mrl_gunloaded); - - if (model instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) model; - PaintFillerBakedModel customModel = new PaintFillerBakedModel(existingModel, rotations[i], false); - if (((IBakedModel) model).getParticleTexture() != null) { - event.getModelRegistry().putObject(mrl, customModel); - } - } - - if (model_gunloaded instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) model_gunloaded; - PaintFillerBakedModel customModel = new PaintFillerBakedModel(existingModel, rotations[i], true); - if (((IBakedModel) model).getParticleTexture() != null) { - event.getModelRegistry().putObject(mrl_gunloaded, customModel); - } - } - } - } - - private void bakeRoadFactoryFurnace(ModelBakeEvent event) { - String[] rotations = new String[] {"north", "east", "south", "west"}; - - for (int i = 0; i < rotations.length; i++) { - ModelResourceLocation mrl = new ModelResourceLocation(FurenikusRoads.MODID + ":road_factory", "connected=false,furnace_active=true,rotation=" + rotations[i]); - ModelResourceLocation mrl_connect = new ModelResourceLocation(FurenikusRoads.MODID + ":road_factory", "connected=true,furnace_active=true,rotation=" + rotations[i]); - Object model = event.getModelRegistry().getObject(mrl); - Object model_connect = event.getModelRegistry().getObject(mrl_connect); - - if (model instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) model; - RoadFactoryBakedModel customModel = new RoadFactoryBakedModel(existingModel, rotations[i]); - event.getModelRegistry().putObject(mrl, customModel); - } - if (model_connect instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) model_connect; - RoadFactoryBakedModel customModel = new RoadFactoryBakedModel(existingModel, rotations[i]); - event.getModelRegistry().putObject(mrl_connect, customModel); - } - } - } - - private void bakeTarDistillerFurnace(ModelBakeEvent event) { - String[] rotations = new String[] {"north", "east", "south", "west"}; - - for (int i = 0; i < rotations.length; i++) { - ModelResourceLocation mrl = new ModelResourceLocation(FurenikusRoads.MODID + ":tar_distiller", "connected=false,furnace_active=true,rotation=" + rotations[i]); - ModelResourceLocation mrl_connect = new ModelResourceLocation(FurenikusRoads.MODID + ":tar_distiller", "connected=true,furnace_active=true,rotation=" + rotations[i]); - Object model = event.getModelRegistry().getObject(mrl); - Object model_connect = event.getModelRegistry().getObject(mrl_connect); - - if (model instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) model; - TarDistillerBakedModel customModel = new TarDistillerBakedModel(existingModel, rotations[i]); - event.getModelRegistry().putObject(mrl, customModel); - } - if (model_connect instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) model_connect; - TarDistillerBakedModel customModel = new TarDistillerBakedModel(existingModel, rotations[i]); - event.getModelRegistry().putObject(mrl_connect, customModel); - } - } - } - - private void bakeTarmacCutterFurnace(ModelBakeEvent event) { - String[] rotations = new String[] {"north", "east", "south", "west"}; - - for (int i = 0; i < rotations.length; i++) { - ModelResourceLocation mrl = new ModelResourceLocation(FurenikusRoads.MODID + ":tarmac_cutter", "furnace_active=true,rotation=" + rotations[i]); - Object model = event.getModelRegistry().getObject(mrl); - - if (model instanceof IBakedModel) { - IBakedModel existingModel = (IBakedModel) model; - TarmacCutterBakedModel customModel = new TarmacCutterBakedModel(existingModel, rotations[i]); - event.getModelRegistry().putObject(mrl, customModel); - } - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/PaintFillerBakedModel.java b/src/main/java/com/silvaniastudios/roads/client/model/PaintFillerBakedModel.java deleted file mode 100644 index 8d6b7ebe..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/PaintFillerBakedModel.java +++ /dev/null @@ -1,290 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import java.awt.Color; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -import javax.vecmath.Matrix4f; - -import org.apache.commons.lang3.tuple.Pair; - -import com.google.common.primitives.Ints; -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.world.World; - -public class PaintFillerBakedModel implements IBakedModel { - - private IBakedModel model; - float p = 1/16F; - private CatsEyeOverrideList overrideList; - String rot; - boolean hasGun = false; - - public PaintFillerBakedModel(IBakedModel model, String rot, boolean hasGun) { - this.model = model; - this.rot = rot; - this.hasGun = hasGun; - this.overrideList = new CatsEyeOverrideList(this); - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - List quadList = new LinkedList(); - quadList.addAll(model.getQuads(state, side, rand)); - - if (side == null) { - return model.getQuads(state, side, rand); - } - - TextureAtlasSprite tex = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/machine_vent_back_on"); - /*TextureAtlasSprite tex_display = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_filler_machine_display"); - - TextureAtlasSprite tex_display_white = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_white"); - TextureAtlasSprite tex_display_yellow = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_yellow"); - TextureAtlasSprite tex_display_red = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_red"); - - float fw = 2.25F; - float fy = 2.25F; - float fr = 2.25F;*/ - - if (rot.equalsIgnoreCase("north")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 0.24F*p, 1.25F*p, 1F *p, - 0.24F*p, 1.25F*p, 7.25F*p, - 0.24F*p, 6.25F*p, 7.25F*p, - 0.24F*p, 6.25F*p, 1F *p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 7.25F*p, 1.25F*p, 0.24F*p, - 1F *p, 1.25F*p, 0.24F*p, - 1F *p, 6.25F*p, 0.24F*p, - 7.25F*p, 6.25F*p, 0.24F*p), 0.007F)); - /*quadList.add(RenderHelper.setBrightTexture(light(tex_display, - //SW SE NE NW - 0F*p, 0F*p, -0.01F*p, - 0F*p, 16F*p, -0.01F*p, - 16F*p, 16F*p, -0.01F*p, - 16F*p, 0F*p, -0.01F*p), 0.007F)); - - quadList.add(RenderHelper.setBrightTexture(light(tex_display_white, - //SW SE NE NW - 6.5F*p, 10F *p, -0.02F*p, - 5.5F*p, 10F *p, -0.02F*p, - 5.5F*p, (10F+fw)*p, -0.02F*p, - 6.5F*p, (10F+fw)*p, -0.02F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex_display_yellow, - //SW SE NE NW - 4.5F*p, 10F *p, -0.02F*p, - 3.5F*p, 10F *p, -0.02F*p, - 3.5F*p, (10F+fy)*p, -0.02F*p, - 4.5F*p, (10F+fy)*p, -0.02F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex_display_red, - //SW SE NE NW - 2.5F*p, 10F *p, -0.02F*p, - 1.5F*p, 10F *p, -0.02F*p, - 1.5F*p, (10F+fr)*p, -0.02F*p, - 2.5F*p, (10F+fr)*p, -0.02F*p), 0.007F));*/ - } - - if (rot.equalsIgnoreCase("east")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 15F *p, 1.25F*p, 0.24F*p, - 8.75F*p, 1.25F*p, 0.24F*p, - 8.75F*p, 6.25F*p, 0.24F*p, - 15F *p, 6.25F*p, 0.24F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 15.76F*p, 1.25F*p, 7.25F*p, - 15.76F*p, 1.25F*p, 1F *p, - 15.76F*p, 6.25F*p, 1F *p, - 15.76F*p, 6.25F*p, 7.25F*p), 0.007F)); - /*quadList.add(RenderHelper.setBrightTexture(light(tex_display, - //SW SE NE NW - 16.01F*p, 0F*p, 0F*p, - 16.01F*p, 16F*p, 0F*p, - 16.01F*p, 16F*p, 16F*p, - 16.01F*p, 0F*p, 16F*p), 0.007F)); - - quadList.add(RenderHelper.setBrightTexture(light(tex_display_white, - //SW SE NE NW - 16.02F*p, 10F *p, 6.5F*p, - 16.02F*p, 10F *p, 5.5F*p, - 16.02F*p, (10F+fw)*p, 5.5F*p, - 16.02F*p, (10F+fw)*p, 6.5F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex_display_yellow, - //SW SE NE NW - 16.02F*p, 10F *p, 4.5F*p, - 16.02F*p, 10F *p, 3.5F*p, - 16.02F*p, (10F+fy)*p, 3.5F*p, - 16.02F*p, (10F+fy)*p, 4.5F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex_display_red, - //SW SE NE NW - 16.02F*p, 10F *p, 2.5F*p, - 16.02F*p, 10F *p, 1.5F*p, - 16.02F*p, (10F+fr)*p, 1.5F*p, - 16.02F*p, (10F+fr)*p, 2.5F*p), 0.007F));*/ - } - - if (rot.equalsIgnoreCase("south")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 15.76F*p, 1.25F*p, 15F *p, - 15.76F*p, 1.25F*p, 8.75F*p, - 15.76F*p, 6.25F*p, 8.75F*p, - 15.76F*p, 6.25F*p, 15F *p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 8.75F*p, 1.25F*p, 15.76F*p, - 15F *p, 1.25F*p, 15.76F*p, - 15F *p, 6.25F*p, 15.76F*p, - 8.75F*p, 6.25F*p, 15.76F*p), 0.007F)); - /*quadList.add(RenderHelper.setBrightTexture(light(tex_display, - //SW SE NE NW - 16F*p, 0F*p, 16.01F*p, - 16F*p, 16F*p, 16.01F*p, - 0F*p, 16F*p, 16.01F*p, - 0F*p, 0F*p, 16.01F*p), 0.007F)); - - quadList.add(RenderHelper.setBrightTexture(light(tex_display_white, - //SW SE NE NW - 9.5F*p, 10F *p, 16.02F*p, - 10.5F*p, 10F *p, 16.02F*p, - 10.5F*p, (10F+fw)*p, 16.02F*p, - 9.5F*p, (10F+fw)*p, 16.02F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex_display_yellow, - //SW SE NE NW - 11.5F*p, 10F *p, 16.02F*p, - 12.5F*p, 10F *p, 16.02F*p, - 12.5F*p, (10F+fy)*p, 16.02F*p, - 11.5F*p, (10F+fy)*p, 16.02F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex_display_red, - //SW SE NE NW - 13.5F*p, 10F *p, 16.02F*p, - 14.5F*p, 10F *p, 16.02F*p, - 14.5F*p, (10F+fr)*p, 16.02F*p, - 13.5F*p, (10F+fr)*p, 16.02F*p), 0.007F));*/ - } - - if (rot.equalsIgnoreCase("west")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 1F *p, 1.25F*p, 15.76F*p, - 7.25F*p, 1.25F*p, 15.76F*p, - 7.25F*p, 6.25F*p, 15.76F*p, - 1F *p, 6.25F*p, 15.76F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 0.24F*p, 1.25F*p, 8.75F*p, - 0.24F*p, 1.25F*p, 15F *p, - 0.24F*p, 6.25F*p, 15F *p, - 0.24F*p, 6.25F*p, 8.75F*p), 0.007F)); - /*quadList.add(RenderHelper.setBrightTexture(light(tex_display, - //SW SE NE NW - -0.01F*p, 0F*p, 16F*p, - -0.01F*p, 16F*p, 16F*p, - -0.01F*p, 16F*p, 0F*p, - -0.01F*p, 0F*p, 0F*p), 0.007F)); - - quadList.add(RenderHelper.setBrightTexture(light(tex_display_white, - //SW SE NE NW - -0.02F*p, 10F *p, 9.5F*p, - -0.02F*p, 10F *p, 10.5F*p, - -0.02F*p, (10F+fw)*p, 10.5F*p, - -0.02F*p, (10F+fw)*p, 9.5F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex_display_yellow, - //SW SE NE NW - -0.02F*p, 10F *p, 11.5F*p, - -0.02F*p, 10F *p, 12.5F*p, - -0.02F*p, (10F+fy)*p, 12.5F*p, - -0.02F*p, (10F+fy)*p, 11.5F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex_display_red, - //SW SE NE NW - -0.02F*p, 10F *p, 13.5F*p, - -0.02F*p, 10F *p, 14.5F*p, - -0.02F*p, (10F+fr)*p, 14.5F*p, - -0.02F*p, (10F+fr)*p, 13.5F*p), 0.007F));*/ - } - return quadList; - } - - private BakedQuad light(TextureAtlasSprite texture, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4) { - int packednormal; - packednormal = RenderHelper.calculatePackedNormal(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4); - return new BakedQuad(Ints.concat( - RenderHelper.vertexToInts(x1, y1, z1, Color.WHITE.getRGB(), texture, 16, 16, packednormal), - RenderHelper.vertexToInts(x2, y2, z2, Color.WHITE.getRGB(), texture, 16, 0, packednormal), - RenderHelper.vertexToInts(x3, y3, z3, Color.WHITE.getRGB(), texture, 0, 0, packednormal), - RenderHelper.vertexToInts(x4, y4, z4, Color.WHITE.getRGB(), texture, 0, 16, packednormal)), - 0, EnumFacing.SOUTH, texture, true, net.minecraft.client.renderer.vertex.DefaultVertexFormats.ITEM); - } - - @Override - public boolean isAmbientOcclusion() { - return model.isAmbientOcclusion(); - } - - @Override - public boolean isGui3d() { - return model.isGui3d(); - } - - @Override - public boolean isBuiltInRenderer() { - return false; - } - - @Override - public TextureAtlasSprite getParticleTexture() { - return model.getParticleTexture(); - } - - @Override - public ItemOverrideList getOverrides() { - return this.overrideList; - } - - @SuppressWarnings("deprecation") - @Override - public ItemCameraTransforms getItemCameraTransforms() { - return model.getItemCameraTransforms(); - } - - @Override - public Pair handlePerspective(ItemCameraTransforms.TransformType cameraTransformType) { - Matrix4f matrix4f = model.handlePerspective(cameraTransformType).getRight(); - return Pair.of(this, matrix4f); - } - - public PaintFillerBakedModel setCurrentItemStack(ItemStack stack) { - return this; - } - - private static class CatsEyeOverrideList extends ItemOverrideList { - private PaintFillerBakedModel model; - - public CatsEyeOverrideList(PaintFillerBakedModel model) { - super(Collections.emptyList()); - this.model = model; - } - - @Override - public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) { - return this.model.setCurrentItemStack(stack); - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/PaintFillerHopperRenderer.java b/src/main/java/com/silvaniastudios/roads/client/model/PaintFillerHopperRenderer.java deleted file mode 100644 index 86b92963..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/PaintFillerHopperRenderer.java +++ /dev/null @@ -1,364 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.hopper.PaintFillerHopperEntity; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.util.EnumFacing; -import net.minecraftforge.client.model.animation.FastTESR; -import net.minecraftforge.fluids.FluidStack; - -public class PaintFillerHopperRenderer extends FastTESR { - - private static float p = 1/16F; //one "pixel" - - final TextureAtlasSprite sprite_glass = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/hopper_tank"); - final TextureAtlasSprite sprite_glass_top = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/hopper_tank_top"); - - final TextureAtlasSprite sprite_light_white = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/hopper_type_white"); - final TextureAtlasSprite sprite_light_yellow = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/hopper_type_yellow"); - final TextureAtlasSprite sprite_light_red = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/hopper_type_red"); - final TextureAtlasSprite sprite_light_item = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/hopper_type_item"); - final TextureAtlasSprite sprite_light_none = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/hopper_type_none"); - - - @Override - public void renderTileEntityFast(PaintFillerHopperEntity te, double x, double y, double z, float partialTicks, int destroyStage, float partial, BufferBuilder buffer) { - FluidStack paint_white = te.white_paint.getFluid(); - FluidStack paint_yellow = te.yellow_paint.getFluid(); - FluidStack paint_red = te.red_paint.getFluid(); - - TextureAtlasSprite sprite_white_paint = null; - TextureAtlasSprite sprite_yellow_paint = null; - TextureAtlasSprite sprite_red_paint = null; - - if (paint_white != null) { sprite_white_paint = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(paint_white.getFluid().getStill(paint_white).toString()); } - if (paint_yellow != null) { sprite_yellow_paint = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(paint_yellow.getFluid().getStill(paint_yellow).toString()); } - if (paint_red != null) { sprite_red_paint = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(paint_red.getFluid().getStill(paint_red).toString()); } - - - int up = te.getSideUp(); - int north = te.getSideNorth(); - int east = te.getSideEast(); - int south = te.getSideSouth(); - int west = te.getSideWest(); - - if (up > 0) { - if (up == 1) { renderSide(buffer, x, y, z, 3, 12, 3, 10, 3, 10, paint_white, te, up, sprite_white_paint, EnumFacing.UP); } - if (up == 2) { renderSide(buffer, x, y, z, 3, 12, 3, 10, 3, 10, paint_yellow, te, up, sprite_yellow_paint, EnumFacing.UP); } - if (up == 3) { renderSide(buffer, x, y, z, 3, 12, 3, 10, 3, 10, paint_red, te, up, sprite_red_paint, EnumFacing.UP); } - if (up == 4) { renderSide(buffer, x, y, z, 3, 12, 3, 10, 3, 10, null, te, up, null, EnumFacing.UP); } - } - - if (north > 0) { - if (north == 1) { renderSide(buffer, x, y, z, 3, 4, 1, 10, 8, 2, paint_white, te, north, sprite_white_paint, EnumFacing.NORTH); } - if (north == 2) { renderSide(buffer, x, y, z, 3, 4, 1, 10, 8, 2, paint_yellow, te, north, sprite_yellow_paint, EnumFacing.NORTH); } - if (north == 3) { renderSide(buffer, x, y, z, 3, 4, 1, 10, 8, 2, paint_red, te, north, sprite_red_paint, EnumFacing.NORTH); } - if (north == 4) { renderSide(buffer, x, y, z, 3, 4, 1, 10, 8, 2, null, te, north, null, EnumFacing.NORTH); } - } - - if (east > 0) { - if (east == 1) { renderSide(buffer, x, y, z, 13, 4, 3, 2, 8, 10, paint_white, te, east, sprite_white_paint, EnumFacing.EAST); } - if (east == 2) { renderSide(buffer, x, y, z, 13, 4, 3, 2, 8, 10, paint_yellow, te, east, sprite_yellow_paint, EnumFacing.EAST); } - if (east == 3) { renderSide(buffer, x, y, z, 13, 4, 3, 2, 8, 10, paint_red, te, east, sprite_red_paint, EnumFacing.EAST); } - if (east == 4) { renderSide(buffer, x, y, z, 13, 4, 3, 2, 8, 10, null, te, east, null, EnumFacing.EAST); } - } - - if (south > 0) { - if (south == 1) { renderSide(buffer, x, y, z, 3, 4, 13, 10, 8, 2, paint_white, te, south, sprite_white_paint, EnumFacing.SOUTH); } - if (south == 2) { renderSide(buffer, x, y, z, 3, 4, 13, 10, 8, 2, paint_yellow, te, south, sprite_yellow_paint, EnumFacing.SOUTH); } - if (south == 3) { renderSide(buffer, x, y, z, 3, 4, 13, 10, 8, 2, paint_red, te, south, sprite_red_paint, EnumFacing.SOUTH); } - if (south == 4) { renderSide(buffer, x, y, z, 3, 4, 13, 10, 8, 2, null, te, south, null, EnumFacing.SOUTH); } - } - - if (west > 0) { - if (west == 1) { renderSide(buffer, x, y, z, 1, 4, 3, 2, 8, 10, paint_white, te, west, sprite_white_paint, EnumFacing.WEST); } - if (west == 2) { renderSide(buffer, x, y, z, 1, 4, 3, 2, 8, 10, paint_yellow, te, west, sprite_yellow_paint, EnumFacing.WEST); } - if (west == 3) { renderSide(buffer, x, y, z, 1, 4, 3, 2, 8, 10, paint_red, te, west, sprite_red_paint, EnumFacing.WEST); } - if (west == 4) { renderSide(buffer, x, y, z, 1, 4, 3, 2, 8, 10, null, te, west, null, EnumFacing.WEST); } - } - - } - - private void renderSide(final BufferBuilder buffer, double x, double y, double z, - float posX, float posY, float posZ, float sizeX, float sizeY, float sizeZ, - FluidStack fluid, PaintFillerHopperEntity te, int type, TextureAtlasSprite sprite, EnumFacing rot) { - - - TextureAtlasSprite sprite_type = sprite_light_none; - - if (type == 1) { sprite_type = sprite_light_white; } - if (type == 2) { sprite_type = sprite_light_yellow; } - if (type == 3) { sprite_type = sprite_light_red; } - if (type == 4) { sprite_type = sprite_light_item; } - - renderLight(buffer, x, y, z, rot, te, sprite_type); - - if (type < 4) { - if (rot == EnumFacing.UP) { - renderTank(buffer, x, y, z, posX, posY, posZ, sizeX, sizeY, sizeZ, te, sprite_glass_top, rot); - } else { - renderTank(buffer, x, y, z, posX, posY, posZ, sizeX, sizeY, sizeZ, te, sprite_glass, rot); - } - - if (fluid != null && fluid.amount > 0) { - float f = 0.0625f; //Tiny inset amount for fluids to avoid z-fighting - RenderHelper.renderTankFluid(buffer, x, y, z, posX+f, posY+f, posZ+f, sizeX-(f*2), sizeY-(f*2), sizeZ-(f*2), - fluid.amount, PaintFillerHopperEntity.FILLER_TANK_CAP, sprite); - } - } - } - - private static void renderLight(final BufferBuilder buffer, double x, double y, double z, EnumFacing rot, PaintFillerHopperEntity te, TextureAtlasSprite sprite) { - if (rot == EnumFacing.NORTH) { - RenderHelper.renderCube(buffer, x, y, z, 7f*p, 11.5f*p, 0.5f*p, 2f*p, 0.25f*p, 0.5f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 11.5f*p, 7f*p, 0.5f*p, 0.25f*p, 2f*p, 0.5f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 4.25f*p, 7f*p, 0.5f*p, 0.25f*p, 2f*p, 0.5f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 7f*p, 4.25f*p, 0.5f*p, 2f*p, 0.25f*p, 0.5f*p, sprite); - - RenderHelper.renderCube(buffer, x, y, z, 7.5f*p, 7.5f*p, 0.25f*p, 1f*p, 1f*p, 0.25f*p, sprite); - } - if (rot == EnumFacing.EAST) { - RenderHelper.renderCube(buffer, x, y, z, 15f*p, 11.5f*p, 7f*p, 0.5f*p, 0.25f*p, 2f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 15f*p, 7f*p, 4.25f*p, 0.5f*p, 2f*p, 0.25f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 15f*p, 7f*p, 11.5f*p, 0.5f*p, 2f*p, 0.25f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 15f*p, 4.25f*p, 7f*p, 0.5f*p, 0.25f*p, 2f*p, sprite); - - RenderHelper.renderCube(buffer, x, y, z, 15.5f*p, 7.5f*p, 7.5f*p, 0.25f*p, 1f*p, 1f*p, sprite); - } - if (rot == EnumFacing.SOUTH) { - RenderHelper.renderCube(buffer, x, y, z, 7f*p, 11.5f*p, 15f*p, 2f*p, 0.25f*p, 0.5f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 11.5f*p, 7f*p, 15f*p, 0.25f*p, 2f*p, 0.5f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 4.25f*p, 7f*p, 15f*p, 0.25f*p, 2f*p, 0.5f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 7f*p, 4.25f*p, 15f*p, 2f*p, 0.25f*p, 0.5f*p, sprite); - - RenderHelper.renderCube(buffer, x, y, z, 7.5f*p, 7.5f*p, 15.5f*p, 1f*p, 1f*p, 0.25f*p, sprite); - } - if (rot == EnumFacing.WEST) { - RenderHelper.renderCube(buffer, x, y, z, 0.5f*p, 11.5f*p, 7f*p, 0.5f*p, 0.25f*p, 2f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 0.5f*p, 7f*p, 4.25f*p, 0.5f*p, 2f*p, 0.25f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 0.5f*p, 7f*p, 11.5f*p, 0.5f*p, 2f*p, 0.25f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 0.5f*p, 4.25f*p, 7f*p, 0.5f*p, 0.25f*p, 2f*p, sprite); - - RenderHelper.renderCube(buffer, x, y, z, 0.25f*p, 7.5f*p, 7.5f*p, 0.25f*p, 1f*p, 1f*p, sprite); - } - - if (rot == EnumFacing.UP) { - RenderHelper.renderCube(buffer, x, y, z, 7f*p, 15f*p, 4.25f*p, 2f*p, 0.5f*p, 0.25f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 11.5f*p, 15f*p, 7f*p, 0.25f*p, 0.5f*p, 2f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 7f*p, 15f*p, 11.5f*p, 2f*p, 0.5f*p, 0.25f*p, sprite); - RenderHelper.renderCube(buffer, x, y, z, 4.25f*p, 15f*p, 7f*p, 0.25f*p, 0.5f*p, 2f*p, sprite); - - RenderHelper.renderCube(buffer, x, y, z, 7.5f*p, 15.25f*p, 7.5f*p, 1f*p, 0.5f*p, 1f*p, sprite); - } - } - - private static void renderTank(final BufferBuilder buffer, double x, double y, double z, - float posX, float posY, float posZ, float sizeX, float sizeY, float sizeZ, - PaintFillerHopperEntity te, TextureAtlasSprite sprite, EnumFacing facing) { - renderGlassTankCube(buffer, x, y, z, posX*p, posY*p, posZ*p, sizeX*p, sizeY*p, sizeZ*p, sprite, facing); - } - - public static void renderGlassTankCube(final BufferBuilder buffer, double x, double y, double z, float xLow, float yLow, float zLow, float xSize, float ySize, float zSize, TextureAtlasSprite texture, EnumFacing facing) { - final int red = (int) (0xFF); - final int green = (int) (0xFF); - final int blue = (int) (0xFF); - final int alpha = 0xFF; - - final double u = texture.getMinU(); - final double v = texture.getMinV(); - - double minU = texture.getMinU(); //3 - double maxU = texture.getMaxU(); //13 - double minV = texture.getMinV(); //2 - double maxV = texture.getMaxV(); //4 - - final double uSize = maxU - minU; - final double vSize = maxV - minV; - - float xHigh = xLow + xSize; - float yHigh = yLow + ySize; - float zHigh = zLow + zSize; - - if (facing == EnumFacing.NORTH || facing == EnumFacing.SOUTH) { - //Up - minU = u + ((uSize/16.0)*3.0); - maxU = u + ((uSize/16.0)*13.0); - minV = v + ((vSize/16.0)*2.0); - maxV = v + ((vSize/16.0)*4.0); - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(240, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(240, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(240, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(240, 0).endVertex(); //SW - - //Down - minU = u + ((uSize/16.0)*3.0); - maxU = u + ((uSize/16.0)*13.0); - minV = v + ((vSize/16.0)*12.0); - maxV = v + ((vSize/16.0)*14.0); - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(168, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(168, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(168, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(168, 0).endVertex(); //SW - - if (facing == EnumFacing.NORTH) { - //North - minU = u + ((uSize/16.0)*3.0); - maxU = u + ((uSize/16.0)*13.0); - minV = v + ((vSize/16.0)*4.0); - maxV = v + ((vSize/16.0)*12.0); - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(216, 0).endVertex(); //SE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(216, 0).endVertex(); //NE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(216, 0).endVertex(); //NW - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(216, 0).endVertex(); //SW - } - - if (facing == EnumFacing.SOUTH) { - //South - minU = u + ((uSize/16.0)*3.0); - maxU = u + ((uSize/16.0)*13.0); - minV = v + ((vSize/16.0)*4.0); - maxV = v + ((vSize/16.0)*12.0); - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(216, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(216, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(216, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(216, 0).endVertex(); //SW - } - //West - minU = u + ((uSize/16.0)*1.0); - maxU = u + ((uSize/16.0)*3.0); - minV = v + ((vSize/16.0)*4.0); - maxV = v + ((vSize/16.0)*12.0); - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(192, 0).endVertex(); //SE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(192, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(192, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(192, 0).endVertex(); //SW - - //East - minU = u + ((uSize/16.0)*13.0); - maxU = u + ((uSize/16.0)*15.0); - minV = v + ((vSize/16.0)*4.0); - maxV = v + ((vSize/16.0)*12.0); - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(192, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(192, 0).endVertex(); //NE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(192, 0).endVertex(); //NW - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(192, 0).endVertex(); //SW - - } else if (facing == EnumFacing.EAST || facing == EnumFacing.WEST) { - //Up - minU = u + ((uSize/16.0)*3.0); - maxU = u + ((uSize/16.0)*13.0); - minV = v + ((vSize/16.0)*2.0); - maxV = v + ((vSize/16.0)*4.0); - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(240, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(240, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(240, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(240, 0).endVertex(); //SW - - //Down - minU = u + ((uSize/16.0)*3.0); - maxU = u + ((uSize/16.0)*13.0); - minV = v + ((vSize/16.0)*12.0); - maxV = v + ((vSize/16.0)*14.0); - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(168, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(168, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(168, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(168, 0).endVertex(); //SW - - //North - minU = u + ((uSize/16.0)*1.0); - maxU = u + ((uSize/16.0)*3.0); - minV = v + ((vSize/16.0)*4.0); - maxV = v + ((vSize/16.0)*12.0); - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(216, 0).endVertex(); //SE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(216, 0).endVertex(); //NE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(216, 0).endVertex(); //NW - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(216, 0).endVertex(); //SW - - //South - minU = u + ((uSize/16.0)*13.0); - maxU = u + ((uSize/16.0)*15.0); - minV = v + ((vSize/16.0)*4.0); - maxV = v + ((vSize/16.0)*12.0); - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(216, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(216, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(216, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(216, 0).endVertex(); //SW - - if (facing == EnumFacing.WEST) { - //West - minU = u + ((uSize/16.0)*3.0); - maxU = u + ((uSize/16.0)*13.0); - minV = v + ((vSize/16.0)*4.0); - maxV = v + ((vSize/16.0)*12.0); - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(192, 0).endVertex(); //SE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(192, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(192, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(192, 0).endVertex(); //SW - } - if (facing == EnumFacing.EAST) { - //East - minU = u + ((uSize/16.0)*3.0); - maxU = u + ((uSize/16.0)*13.0); - minV = v + ((vSize/16.0)*4.0); - maxV = v + ((vSize/16.0)*12.0); - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(192, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(192, 0).endVertex(); //NE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(192, 0).endVertex(); //NW - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(192, 0).endVertex(); //SW - } - } else { - //Up - minU = u + ((uSize/16.0)*3.0); - maxU = u + ((uSize/16.0)*13.0); - minV = v + ((vSize/16.0)*3.0); - maxV = v + ((vSize/16.0)*13.0); - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(240, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(240, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(240, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(240, 0).endVertex(); //SW - - //North - minU = u + ((uSize/16.0)*3.0); - maxU = u + ((uSize/16.0)*13.0); - minV = v + ((vSize/16.0)*0.0); - maxV = v + ((vSize/16.0)*3.0); - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(216, 0).endVertex(); //SE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(216, 0).endVertex(); //NE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(216, 0).endVertex(); //NW - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(216, 0).endVertex(); //SW - - //South - minU = u + ((uSize/16.0)*3.0); - maxU = u + ((uSize/16.0)*13.0); - minV = v + ((vSize/16.0)*13.0); - maxV = v + ((vSize/16.0)*16.0); - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(216, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(216, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(216, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(216, 0).endVertex(); //SW - - //West - minU = u + ((uSize/16.0)*0.0); - maxU = u + ((uSize/16.0)*3.0); - minV = v + ((vSize/16.0)*3.0); - maxV = v + ((vSize/16.0)*13.0); - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(192, 0).endVertex(); //SE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(192, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(192, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(192, 0).endVertex(); //SW - - //East - minU = u + ((uSize/16.0)*13.0); - maxU = u + ((uSize/16.0)*16.0); - minV = v + ((vSize/16.0)*3.0); - maxV = v + ((vSize/16.0)*13.0); - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(192, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(192, 0).endVertex(); //NE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(192, 0).endVertex(); //NW - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(192, 0).endVertex(); //SW - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/PaintFillerRenderer.java b/src/main/java/com/silvaniastudios/roads/client/model/PaintFillerRenderer.java deleted file mode 100644 index f433fd71..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/PaintFillerRenderer.java +++ /dev/null @@ -1,117 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerEntity; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraftforge.client.model.animation.FastTESR; -import net.minecraftforge.fluids.FluidStack; - -public class PaintFillerRenderer extends FastTESR { - - private static float p = 1/16F; //one "pixel" - private int lastWhite = 0; - private int lastYellow = 0; - private int lastRed = 0; - private long lastTick = 0; - - @Override - public void renderTileEntityFast(PaintFillerEntity te, double x, double y, double z, float partialTicks, int destroyStage, float partial, BufferBuilder buffer) { - FluidStack white_paint = te.white_paint.getFluid(); - FluidStack yellow_paint = te.yellow_paint.getFluid(); - FluidStack red_paint = te.red_paint.getFluid(); - - bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); - - int meta = te.getBlockType().getMetaFromState(te.getState()); - - boolean wp = white_paint != null; - boolean yp = yellow_paint != null; - boolean rp = red_paint != null; - - if (wp && white_paint.amount > 0) { renderTankFluid(buffer, x, y, z, 0, white_paint, meta); } - if (yp && yellow_paint.amount > 0) { renderTankFluid(buffer, x, y, z, 1, yellow_paint, meta); } - if (rp && red_paint.amount > 0) { renderTankFluid(buffer, x, y, z, 2, red_paint, meta); } - - if (wp && white_paint.amount > lastWhite) { renderFillingFluid(buffer, x, y, z, 0, meta); } - if (yp && yellow_paint.amount > lastYellow) { renderFillingFluid(buffer, x, y, z, 1, meta); } - if (rp && red_paint.amount > lastRed) { renderFillingFluid(buffer, x, y, z, 2, meta); } - - //why isn't there an easier way to get a tick - //-5 to allow 5 ticks buffer for network desyncs etc, at the cost of maybe showing it filling a quarter second longer than it should oh noooooo - if (getWorld().getTotalWorldTime()-5 > lastTick) { - if (wp) { lastWhite = white_paint.amount; } - if (yp) { lastYellow = yellow_paint.amount; } - if (rp) { lastRed = red_paint.amount; } - lastTick = getWorld().getTotalWorldTime(); - } - - if (te.has_gun) { - if (te.gun_white > 0) { renderGunTankFluid(buffer, x, y, z, 0, te.gun_white, meta); } - if (te.gun_yellow > 0) { renderGunTankFluid(buffer, x, y, z, 1, te.gun_yellow, meta); } - if (te.gun_red > 0) { renderGunTankFluid(buffer, x, y, z, 2, te.gun_red, meta); } - - if (te.fuel_remaining > 0) { - if (wp) { if (te.gun_white < PaintFillerEntity.GUN_TANK_CAP && white_paint.amount > 1000) { renderGunFillingFluid(buffer, x, y, z, 0, meta); }} - if (yp) { if (te.gun_yellow < PaintFillerEntity.GUN_TANK_CAP && yellow_paint.amount > 1000) { renderGunFillingFluid(buffer, x, y, z, 1, meta); }} - if (rp) { if (te.gun_red < PaintFillerEntity.GUN_TANK_CAP && red_paint.amount > 1000) { renderGunFillingFluid(buffer, x, y, z, 2, meta); }} - } - } - } - - private static void renderTankFluid(final BufferBuilder buffer, double x, double y, double z, int col, FluidStack fluid, int meta) { - float colourOffset = col * 5.25F; - if (fluid != null) { - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(fluid.getFluid().getStill(fluid).toString()); - - if (meta == 0) { RenderHelper.renderTankFluid(buffer, x, y, z, 1.5F + colourOffset, 0.25F, 12F, 2.5F, 11.75F, 2.5F, fluid.amount, PaintFillerEntity.FILLER_TANK_CAP, sprite); } - if (meta == 1) { RenderHelper.renderTankFluid(buffer, x, y, z, 1.5F, 0.25F, 1.5F + colourOffset, 2.5F, 11.75F, 2.5F, fluid.amount, PaintFillerEntity.FILLER_TANK_CAP, sprite); } - if (meta == 2) { RenderHelper.renderTankFluid(buffer, x, y, z, 12F - colourOffset, 0.25F, 1.5F, 2.5F, 11.75F, 2.5F, fluid.amount, PaintFillerEntity.FILLER_TANK_CAP, sprite); } - if (meta == 3) { RenderHelper.renderTankFluid(buffer, x, y, z, 12F, 0.25F, 12F - colourOffset, 2.5F, 11.75F, 2.5F, fluid.amount, PaintFillerEntity.FILLER_TANK_CAP, sprite); } - } - } - - private static void renderFillingFluid(final BufferBuilder buffer, double x, double y, double z, int col, int meta) { - float colourOffset = col * 0.328125F; - - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_white"); - if (col == 1) { sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_yellow"); } - if (col == 2) { sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_red"); } - - if (meta == 0) { RenderHelper.renderCube(buffer, x, y, z, 2.5F*p + colourOffset, 0.25F*p, 13F*p, 0.5F*p, 12F*p, 0.5F*p, sprite); } - if (meta == 1) { RenderHelper.renderCube(buffer, x, y, z, 2.5F*p, 0.25F*p, 2.5F*p + colourOffset, 0.5F*p, 12F*p, 0.5F*p, sprite); } - if (meta == 2) { RenderHelper.renderCube(buffer, x, y, z, 13F*p - colourOffset, 0.25F*p, 2.5F*p, 0.5F*p, 12F*p, 0.5F*p, sprite); } - if (meta == 3) { RenderHelper.renderCube(buffer, x, y, z, 13F*p, 0.25F*p, 13F*p - colourOffset, 0.5F*p, 12F*p, 0.5F*p, sprite); } - } - - private static void renderGunTankFluid(final BufferBuilder buffer, double x, double y, double z, int col, int tankFill, int meta) { - float colourOffset = col * (2F/16F); - float fill = ((0.85F/16F)/100F) * RenderHelper.getPercentage(tankFill, PaintFillerEntity.GUN_TANK_CAP); - - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_white"); - if (col == 1) { sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_yellow"); } - if (col == 2) { sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_red"); } - - if (meta == 0) { RenderHelper.renderCube(buffer, x, y, z, 11.5625F*p, 8.8F*p + colourOffset, 4.4375F*p, 0.875F*p, fill, 1.9375F*p, sprite); } - if (meta == 1) { RenderHelper.renderCube(buffer, x, y, z, 9.5625F*p, 8.8F*p + colourOffset, 11.5625F*p, 1.9375F*p, fill, 0.875F*p, sprite); } - if (meta == 2) { RenderHelper.renderCube(buffer, x, y, z, 3.5625F*p, 8.8F*p + colourOffset, 9.5625F*p, 0.875F*p, fill, 1.9375F*p, sprite); } - if (meta == 3) { RenderHelper.renderCube(buffer, x, y, z, 4.4375F*p, 8.8F*p + colourOffset, 3.5625F*p, 1.9375F*p, fill, 0.875F*p, sprite); } - } - - private static void renderGunFillingFluid(final BufferBuilder buffer, double x, double y, double z, int col, int meta) { - float colourOffset = col * (2F/16F); - - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_white"); - if (col == 1) { sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_yellow"); } - if (col == 2) { sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_red"); } - - if (meta == 0) { RenderHelper.renderCube(buffer, x, y, z, 11.75F*p, 8.8F*p + colourOffset, 6.125F*p, 0.5F*p, 0.7F*p, 0.25F*p, sprite); } - if (meta == 1) { RenderHelper.renderCube(buffer, x, y, z, 9.5625F*p, 8.8F*p + colourOffset, 11.75F*p, 0.25F*p, 0.7F*p, 0.5F*p, sprite); } - if (meta == 2) { RenderHelper.renderCube(buffer, x, y, z, 3.75F*p, 8.8F*p + colourOffset, 9.5625F*p, 0.5F*p, 0.7F*p, 0.25F*p, sprite); } - if (meta == 3) { RenderHelper.renderCube(buffer, x, y, z, 6.125F*p, 8.8F*p + colourOffset, 3.75F*p, 0.25F*p, 0.7F*p, 0.5F*p, sprite); } - - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/PaintGunModel.java b/src/main/java/com/silvaniastudios/roads/client/model/PaintGunModel.java deleted file mode 100644 index b6eec9d4..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/PaintGunModel.java +++ /dev/null @@ -1,366 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import java.awt.Color; -import java.util.*; - -import javax.vecmath.Matrix4f; - -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.diagonal.ShapeLibrary; -import com.silvaniastudios.roads.blocks.paint.customs.CustomPaintBlock; -import com.silvaniastudios.roads.blocks.paint.customs.ICustomBlock; -import com.silvaniastudios.roads.client.render.Quad; -import net.minecraft.client.renderer.RenderItem; -import net.minecraft.client.renderer.texture.TextureUtil; -import net.minecraft.client.renderer.vertex.DefaultVertexFormats; -import net.minecraft.util.math.Vec3d; -import org.apache.commons.lang3.tuple.Pair; - -import com.google.common.primitives.Ints; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerEntity; -import com.silvaniastudios.roads.registries.PaintGunItemRegistry; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.block.model.ModelResourceLocation; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumFacing; -import net.minecraft.world.World; - -public class PaintGunModel implements IBakedModel { - - private IBakedModel mainModel; - protected TextureAtlasSprite[] sprites; - private final PaintGunOverrideList overrideList; - private ItemStack stack; - private List itemQuadsCache = null; - - //Used to detect selection changes - private int selOld; - private int pageOld; - - public static final ModelResourceLocation modelResourceLocation = new ModelResourceLocation(FurenikusRoads.MODID + ":paint_gun", "inventory"); - - public PaintGunModel(IBakedModel mainModel) { - this.mainModel = mainModel; - this.overrideList = new PaintGunOverrideList(this); - this.stack = null; - sprites = new TextureAtlasSprite[FRBlocks.col.size()]; - for (int i = 0; i < FRBlocks.col.size(); i++) { - sprites[i] = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + FRBlocks.col.get(i).getName()); - } - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - if (!stack.hasTagCompound()) { - return mainModel.getQuads(state, side, rand); - } - - NBTTagCompound nbt = stack.getTagCompound(); - int white_paint = nbt.getInteger("white_paint"); - int yellow_paint = nbt.getInteger("yellow_paint"); - int red_paint = nbt.getInteger("red_paint"); - - List combinedQuadList = new ArrayList(mainModel.getQuads(state, side, rand)); - //Colour number IDs are backwards here. I made everything the wrong way around and I'm too lazy to re-do it correctly. This fixes it fine. - combinedQuadList.addAll(getTankFluid(2, white_paint)); - combinedQuadList.addAll(getTankFluid(1, yellow_paint)); - combinedQuadList.addAll(getTankFluid(0, red_paint)); - - int selId = nbt.getInteger("selectedId"); - int pageId = nbt.getInteger("pageId"); - - if (selId != selOld || pageId != pageOld) { - itemQuadsCache = null; //Clear cache if selections changed - selOld = selId; - pageOld = pageId; - } - - PaintColour col = PaintColour.getFromName(nbt.getString("colour")); - PaintBlockBase block = PaintGunItemRegistry.getSelectedPaint(pageId, selId); - if (block instanceof CustomPaintBlock) { - CustomPaintBlock customBlock = (CustomPaintBlock) block; - if (customBlock.isInternal()) { - combinedQuadList.addAll(createDisplay(getDisplayTexture(block, PaintGunItemRegistry.getSelectedPaintMeta(pageId, selId)), col.getColourInt())); - } else { - combinedQuadList.addAll(createCustomDisplay((CustomPaintBlock) block)); - } - } else { - combinedQuadList.addAll(createDisplay(getDisplayTexture(block.getIconName() + "_" + PaintGunItemRegistry.getSelectedPaintMeta(pageId, selId)), col.getColourInt())); - } - - - return combinedQuadList; - } - - public PaintGunModel setCurrentItemStack(ItemStack stack) { - this.stack = stack; - return this; - } - - private float getPercentage(int num) { - int max = PaintFillerEntity.GUN_TANK_CAP; - float x = (float) num / (float) max; - float y = x*100; - if (y > 100) { return 100; } - return y; - } - - private List getTankFluid(int col, int paintLevel) { - //As above, the col IDs are reversed here because lazy. - TextureAtlasSprite texture = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_red"); - if (col == 1) { texture = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_yellow"); } - if (col == 2) { texture = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":items/paint_white"); } - - List list = new ArrayList(); - - float fluidWidth = 0.0546875F; - float backTankMiddle = 0.75390625F+(fluidWidth/2); - float baseHeight = 0.246875F; - float fluidHeight = 0.0F; - - fluidHeight = getPercentage(paintLevel) * 0.00125F; - - list.add(createBakedQuadForFace(0.5F, fluidWidth, baseHeight + fluidHeight, 0.11875F, backTankMiddle - (col*0.125F) - (fluidWidth/2), 0, texture, EnumFacing.NORTH)); - list.add(createBakedQuadForFace(0.5F, fluidWidth, baseHeight + fluidHeight, 0.11875F, backTankMiddle - (col*0.125F) + (fluidWidth/2), 0, texture, EnumFacing.SOUTH)); - list.add(createBakedQuadForFace(backTankMiddle - (col*0.125F), fluidWidth, baseHeight + fluidHeight, 0.11875F, 0.5F + (fluidWidth/2), 0, texture, EnumFacing.EAST)); - list.add(createBakedQuadForFace(backTankMiddle - (col*0.125F), fluidWidth, baseHeight + fluidHeight, 0.11875F, 0.5F - (fluidWidth/2), 0, texture, EnumFacing.WEST)); - list.add(createBakedQuadForFace(0.5F, fluidWidth, 0.75F - (col*0.125F) + (fluidWidth/2), fluidWidth, baseHeight + fluidHeight + 0.0585F, 0, texture, EnumFacing.UP)); - return list; - } - - private TextureAtlasSprite getDisplayTexture(PaintBlockBase block, int meta) { - return Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":paints/" + block.getIconName() + "_" + meta); - } - - private TextureAtlasSprite getDisplayTexture(String name) { - return Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":paints/" + name); - } - - public Quad getSpriteQuad(TextureAtlasSprite sprite) { - Quad quad = new Quad( - new Vec3d(0.3671875F, 0.271875F, 0.621875F), 16f, 0f, //BL - new Vec3d(0.2578125F, 0.271875F, 0.621875F), 0f, 0f,//BR - new Vec3d(0.2578125F, 0.171875F, 0.66375F), 0f, 16f, //TR - new Vec3d(0.3671875F, 0.171875F, 0.66375F), 16f, 16f, //TL - sprite, DefaultVertexFormats.ITEM); - - return quad; - } - - private List createDisplay(TextureAtlasSprite texture, int col) { - List list = new ArrayList<>(); - list.add(getSpriteQuad(texture).createQuad(col)); - return list; - } - - private List createDisplay(ItemStack stack, int col) { - List list = new ArrayList<>(); - RenderItem renderItem = Minecraft.getMinecraft().getRenderItem(); - IBakedModel model = renderItem.getItemModelWithOverrides(stack, null, null); - return model.getQuads(null, null, 0); - } - - private List createCustomDisplay(CustomPaintBlock paintBlock) { - List rawQuads; - if (itemQuadsCache == null) { - int colId = PaintColour.getFromName(stack.getTagCompound().getString("colour")).getId(); - boolean[][]grid = ((ICustomBlock) paintBlock).getGrid(stack.getItemDamage() < 7 ? 0 : 1).getGrid(); - - rawQuads = ShapeLibrary.shapeFromGridFlat(grid, 0.2578125F, 0.3671875F, 0.171875F, 0.271875F, 0.621875F, 0.66375F, sprites[colId]); - - itemQuadsCache = shapeBuilderItem(rawQuads, paintBlock.getColour().getColourInt(), 0, 0); - } - return itemQuadsCache; - } - - protected List shapeBuilderItem(List rawQuads, int col, int xRot, int yRot) { - List bakedQuads = new ArrayList<>(); - for (int i = 0; i < rawQuads.size(); i++) { - if (rawQuads.get(i) != null) { - rawQuads.set(i, Quad.rotateQuadX(rawQuads.get(i), xRot).rotateQuadY(rawQuads.get(i), yRot)); - BakedQuad baked = rawQuads.get(i).createQuad(col); - - bakedQuads.add(baked); - } - } - - return bakedQuads; - } - - private BakedQuad createBakedQuadForFace(float centreLR, float width, float centreUD, float height, float forwardDisplacement, int itemRenderLayer, TextureAtlasSprite texture, EnumFacing face) { - float x1, x2, x3, x4; - float y1, y2, y3, y4; - float z1, z2, z3, z4; - int packednormal; - - switch (face) { - case UP: { - x1 = x2 = centreLR + width/2.0F; - x3 = x4 = centreLR - width/2.0F; - z1 = z4 = centreUD + height/2.0F; - z2 = z3 = centreUD - height/2.0F; - y1 = y2 = y3 = y4 = forwardDisplacement; - break; - } - case DOWN: { - x1 = x2 = centreLR + width/2.0F; - x3 = x4 = centreLR - width/2.0F; - z1 = z4 = centreUD - height/2.0F; - z2 = z3 = centreUD + height/2.0F; - y1 = y2 = y3 = y4 = forwardDisplacement; - break; - } - case WEST: { - z1 = z2 = centreLR + width/2.0F; - z3 = z4 = centreLR - width/2.0F; - y1 = y4 = centreUD - height/2.0F; - y2 = y3 = centreUD + height/2.0F; - x1 = x2 = x3 = x4 = forwardDisplacement; - break; - } - case EAST: { - z1 = z2 = centreLR - width/2.0F; - z3 = z4 = centreLR + width/2.0F; - y1 = y4 = centreUD - height/2.0F; - y2 = y3 = centreUD + height/2.0F; - x1 = x2 = x3 = x4 = forwardDisplacement; - break; - } - case NORTH: { - x1 = x2 = centreLR - width/2.0F; - x3 = x4 = centreLR + width/2.0F; - y1 = y4 = centreUD - height/2.0F; - y2 = y3 = centreUD + height/2.0F; - z1 = z2 = z3 = z4 = forwardDisplacement; - break; - } - case SOUTH: { - x1 = x2 = centreLR + width/2.0F; - x3 = x4 = centreLR - width/2.0F; - y1 = y4 = centreUD - height/2.0F; - y2 = y3 = centreUD + height/2.0F; - z1 = z2 = z3 = z4 = forwardDisplacement; - break; - } - default: { - assert false : "Unexpected facing in createBakedQuadForFace:" + face; - return null; - } - } - - packednormal = calculatePackedNormal(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4); - return new BakedQuad(Ints.concat( - vertexToInts(x1, y1, z1, Color.WHITE.getRGB(), texture, 16, 16, packednormal), - vertexToInts(x2, y2, z2, Color.WHITE.getRGB(), texture, 16, 0, packednormal), - vertexToInts(x3, y3, z3, Color.WHITE.getRGB(), texture, 0, 0, packednormal), - vertexToInts(x4, y4, z4, Color.WHITE.getRGB(), texture, 0, 16, packednormal)), - itemRenderLayer, face, texture, true, net.minecraft.client.renderer.vertex.DefaultVertexFormats.ITEM); - } - - private int[] vertexToInts(float x, float y, float z, int color, TextureAtlasSprite texture, float u, float v, int normal) { - return new int[] { - Float.floatToRawIntBits(x), - Float.floatToRawIntBits(y), - Float.floatToRawIntBits(z), - color, - Float.floatToRawIntBits(texture.getInterpolatedU(u)), - Float.floatToRawIntBits(texture.getInterpolatedV(v)), - normal - }; - } - - private int calculatePackedNormal(float x1, float y1, float z1, float x2, float y2, float z2, - float x3, float y3, float z3, float x4, float y4, float z4) { - - float xp = x4-x2; - float yp = y4-y2; - float zp = z4-z2; - - float xq = x3-x1; - float yq = y3-y1; - float zq = z3-z1; - - //Cross Product - float xn = yq*zp - zq*yp; - float yn = zq*xp - xq*zp; - float zn = xq*yp - yq*xp; - - //Normalize - float norm = (float)Math.sqrt(xn*xn + yn*yn + zn*zn); - final float SMALL_LENGTH = 1.0E-4F; //Vec3d.normalise() uses this - if (norm < SMALL_LENGTH) norm = 1.0F; // protect against degenerate quad - - norm = 1.0F / norm; - xn *= norm; - yn *= norm; - zn *= norm; - - int x = ((byte)(xn * 127)) & 0xFF; - int y = ((byte)(yn * 127)) & 0xFF; - int z = ((byte)(zn * 127)) & 0xFF; - return x | (y << 0x08) | (z << 0x10); - } - - @Override - public boolean isAmbientOcclusion() { - return this.mainModel.isAmbientOcclusion(); - } - - @Override - public boolean isGui3d() { - return true; - } - - @Override - public boolean isBuiltInRenderer() { - return false; - } - - @Override - public TextureAtlasSprite getParticleTexture() { - return null; - } - - @Override - public ItemOverrideList getOverrides() { - return this.overrideList; - } - - @SuppressWarnings("deprecation") - @Override - public ItemCameraTransforms getItemCameraTransforms() { - return mainModel.getItemCameraTransforms(); - } - - @Override - public Pair handlePerspective(ItemCameraTransforms.TransformType cameraTransformType) { - Matrix4f matrix4f = mainModel.handlePerspective(cameraTransformType).getRight(); - return Pair.of(this, matrix4f); - } - - private static class PaintGunOverrideList extends ItemOverrideList { - private PaintGunModel model; - - public PaintGunOverrideList(PaintGunModel model) { - super(Collections.emptyList()); - this.model = model; - } - - @Override - public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) { - return this.model.setCurrentItemStack(stack); - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/PaintOvenRenderer.java b/src/main/java/com/silvaniastudios/roads/client/model/PaintOvenRenderer.java deleted file mode 100644 index 856d9c44..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/PaintOvenRenderer.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenEntity; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraftforge.client.model.animation.FastTESR; -import net.minecraftforge.fluids.FluidStack; - -public class PaintOvenRenderer extends FastTESR { - - final TextureAtlasSprite sprite_white_paint = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":fluids/white_paint_flowing"); - final TextureAtlasSprite sprite_yellow_paint = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":fluids/yellow_paint_flowing"); - - @Override - public void renderTileEntityFast(PaintOvenEntity te, double x, double y, double z, float partialTicks, int destroyStage, float partial, BufferBuilder buffer) { - FluidStack paint = te.paint.getFluid(); - FluidStack water = te.water.getFluid(); - TextureAtlasSprite waterTexture = null; - TextureAtlasSprite paintTexture = null; - - if (water != null) { waterTexture = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(water.getFluid().getStill(water).toString()); } - if (paint != null) { paintTexture = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(paint.getFluid().getStill(paint).toString()); } - - float f = 0.0625f; - int meta = te.getBlockType().getMetaFromState(te.getState()); - - if (meta == 0) { - if (water != null) { RenderHelper.renderTankFluid(buffer, x, y, z, 3F+f, 12F+f, 1.75F+f, 10F-(f*2), 4F-(f*2), 10F-(f*2), water.amount, PaintOvenEntity.FILLER_TANK_CAP, waterTexture); } - if (paint != null) { RenderHelper.renderTankFluid(buffer, x, y, z, 3F, 1.25F, 9.25F, 10F, 8F, 3.5F, paint.amount, PaintOvenEntity.FILLER_TANK_CAP, paintTexture); } - } - if (meta == 1) { - if (water != null) { RenderHelper.renderTankFluid(buffer, x, y, z, 4.25F+f, 12F+f, 3F+f, 10F-(f*2), 4F-(f*2), 10F-(f*2), water.amount, PaintOvenEntity.FILLER_TANK_CAP, waterTexture); } - if (paint != null) { RenderHelper.renderTankFluid(buffer, x, y, z, 3.25F, 1.25F, 3F, 3.5F, 8F, 10F, paint.amount, PaintOvenEntity.FILLER_TANK_CAP, paintTexture); } - } - if (meta == 2) { - if (water != null) { RenderHelper.renderTankFluid(buffer, x, y, z, 3F+f, 12F+f, 4.75F+f, 10F-(f*2), 4F-(f*2), 10F-(f*2), water.amount, PaintOvenEntity.FILLER_TANK_CAP, waterTexture); } - if (paint != null) { RenderHelper.renderTankFluid(buffer, x, y, z, 3F, 1.25F, 3.25F, 10F, 8F, 3.5F, paint.amount, PaintOvenEntity.FILLER_TANK_CAP, paintTexture); } - } - if (meta == 3) { - if (water != null) { RenderHelper.renderTankFluid(buffer, x, y, z, 1.75F+f, 12F+f, 3F+f, 10F-(f*2), 4F-(f*2), 10F-(f*2), water.amount, PaintOvenEntity.FILLER_TANK_CAP, waterTexture); } - if (paint != null) { RenderHelper.renderTankFluid(buffer, x, y, z, 9.25F, 1.25F, 3F, 3.5F, 8F, 10F, paint.amount, PaintOvenEntity.FILLER_TANK_CAP, paintTexture); } - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/RenderHelper.java b/src/main/java/com/silvaniastudios/roads/client/model/RenderHelper.java deleted file mode 100644 index 70854196..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/RenderHelper.java +++ /dev/null @@ -1,256 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.DefaultVertexFormats; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraftforge.client.model.pipeline.UnpackedBakedQuad; -import net.minecraftforge.client.model.pipeline.VertexLighterFlat; -import net.minecraftforge.common.ForgeModContainer; -import net.minecraftforge.fml.client.FMLClientHandler; - -public class RenderHelper { - - public static void renderTankFluid(final BufferBuilder buffer, double x, double y, double z, - float posX, float posY, float posZ, float sizeX, float sizeY, float sizeZ, - int tankFill, int tankCap, TextureAtlasSprite sprite) { - float fill = (sizeY/100) * RenderHelper.getPercentage(tankFill, tankCap); - float p = 1/16F; - RenderHelper.renderScaledCube(buffer, x, y, z, posX*p, posY*p, posZ*p, sizeX*p, fill*p, sizeZ*p, sprite); - } - - public static void renderScaledCube(final BufferBuilder buffer, double x, double y, double z, float xLow, float yLow, float zLow, float xSize, float ySize, float zSize, TextureAtlasSprite texture) { - final int red = (int) (0xFF); - final int green = (int) (0xFF); - final int blue = (int) (0xFF); - final int alpha = 0xFF; - - float xHigh = xLow + xSize; - float yHigh = yLow + ySize; - float zHigh = zLow + zSize; - - //Up - double minU = texture.getInterpolatedU(xLow*16); - double minV = texture.getInterpolatedV(zLow*16); - double maxU = texture.getInterpolatedU(xHigh*16); - double maxV = texture.getInterpolatedV(zHigh*16); - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(240, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(240, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(240, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(240, 0).endVertex(); //SW - - //Down - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(168, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(168, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(168, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(168, 0).endVertex(); //SW - - //North - minU = texture.getInterpolatedU(xLow*16); - minV = texture.getInterpolatedV(yLow*16); - maxU = texture.getInterpolatedU(xHigh*16); - maxV = texture.getInterpolatedV(yHigh*16); - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(216, 0).endVertex(); //SE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(216, 0).endVertex(); //NE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(216, 0).endVertex(); //NW - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(216, 0).endVertex(); //SW - - //South - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(216, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(216, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(216, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(216, 0).endVertex(); //SW - - //West - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(192, 0).endVertex(); //SE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(192, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(192, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(192, 0).endVertex(); //SW - - //East - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(192, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(192, 0).endVertex(); //NE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(192, 0).endVertex(); //NW - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(192, 0).endVertex(); //SW - } - - public static void renderCube(final BufferBuilder buffer, double x, double y, double z, float xLow, float yLow, float zLow, float xSize, float ySize, float zSize, TextureAtlasSprite texture) { - final int red = (int) (0xFF); - final int green = (int) (0xFF); - final int blue = (int) (0xFF); - final int alpha = 0xFF; - - final double minU = texture.getMinU(); - final double maxU = texture.getMaxU(); - final double minV = texture.getMinV(); - final double maxV = texture.getMaxV(); - - float xHigh = xLow + xSize; - float yHigh = yLow + ySize; - float zHigh = zLow + zSize; - - //Up - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(240, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(240, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(240, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(240, 0).endVertex(); //SW - //Down - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(168, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(168, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(168, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(168, 0).endVertex(); //SW - //North - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(216, 0).endVertex(); //SE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(216, 0).endVertex(); //NE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(216, 0).endVertex(); //NW - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(216, 0).endVertex(); //SW - //South - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(216, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(216, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(216, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(216, 0).endVertex(); //SW - //West - buffer.pos(x + xLow, y + yLow, z + zLow).color(red, green, blue, alpha).tex(minU, maxV).lightmap(192, 0).endVertex(); //SE - buffer.pos(x + xLow, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(minU, minV).lightmap(192, 0).endVertex(); //NE - buffer.pos(x + xLow, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(maxU, minV).lightmap(192, 0).endVertex(); //NW - buffer.pos(x + xLow, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(192, 0).endVertex(); //SW - //East - buffer.pos(x + xHigh, y + yLow, z + zHigh).color(red, green, blue, alpha).tex(minU, maxV).lightmap(192, 0).endVertex(); //SE - buffer.pos(x + xHigh, y + yHigh, z + zHigh).color(red, green, blue, alpha).tex(minU, minV).lightmap(192, 0).endVertex(); //NE - buffer.pos(x + xHigh, y + yHigh, z + zLow).color(red, green, blue, alpha).tex(maxU, minV).lightmap(192, 0).endVertex(); //NW - buffer.pos(x + xHigh, y + yLow, z + zLow).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(192, 0).endVertex(); //SW - } - - public static void renderFlatQuad(final BufferBuilder buffer, TextureAtlasSprite texture, - float x1, float y1, float z1, - float x2, float y2, float z2, - float x3, float y3, float z3, - float x4, float y4, float z4) { - - - final int red = (int) (0xFF); - final int green = (int) (0xFF); - final int blue = (int) (0xFF); - final int alpha = 0xFF; - - final double minU = texture.getMinU(); - final double maxU = texture.getMaxU(); - final double minV = texture.getMinV(); - final double maxV = texture.getMaxV(); - - final int lightmap1 = 240; - final int lightmap2 = 0; - - buffer.pos(x1, y1, z1).color(red, green, blue, alpha).tex(minU, maxV).lightmap(lightmap1, lightmap2).endVertex(); //SE - buffer.pos(x2, y2, z2).color(red, green, blue, alpha).tex(minU, minV).lightmap(lightmap1, lightmap2).endVertex(); //NE - buffer.pos(x3, y3, z3).color(red, green, blue, alpha).tex(maxU, minV).lightmap(lightmap1, lightmap2).endVertex(); //NW - buffer.pos(x4, y4, z4).color(red, green, blue, alpha).tex(maxU, maxV).lightmap(lightmap1, lightmap2).endVertex(); //SW - } - - public static float getPercentage(float num, float max) { - float x = (float) num / (float) max; - float y = x*100; - if (y > 100) { return 100; } - return y; - } - - public static BakedQuad setBrightTexture(BakedQuad quad, float light) { - if (FMLClientHandler.instance().hasOptifine()) { - return quad; - } - - if (!ForgeModContainer.forgeLightPipelineEnabled) { - return quad; - } - - VertexFormat newFormat = getFormatWithLightMap(quad.getFormat()); - - UnpackedBakedQuad.Builder builder = new UnpackedBakedQuad.Builder(newFormat); - - VertexLighterFlat trans = new VertexLighterFlat(Minecraft.getMinecraft().getBlockColors()) { - @Override - protected void updateLightmap(float[] normal, float[] lightmap, float x, float y, float z) { - lightmap[0] = light; - lightmap[1] = light; - } - - @Override - public void setQuadTint(int tint) { - } - }; - - trans.setParent(builder); - - quad.pipe(trans); - - builder.setQuadTint(quad.getTintIndex()); - builder.setQuadOrientation(quad.getFace()); - builder.setTexture(quad.getSprite()); - builder.setApplyDiffuseLighting(false); - - return builder.build(); - } - - private static final VertexFormat ITEM_FORMAT_WITH_LIGHTMAP = new VertexFormat(DefaultVertexFormats.ITEM).addElement(DefaultVertexFormats.TEX_2S); - - public static VertexFormat getFormatWithLightMap(VertexFormat format) { - if (FMLClientHandler.instance().hasOptifine() || !ForgeModContainer.forgeLightPipelineEnabled) { - return format; - } - - if (format == DefaultVertexFormats.BLOCK) { - return DefaultVertexFormats.BLOCK; - } else if (format == DefaultVertexFormats.ITEM) { - return ITEM_FORMAT_WITH_LIGHTMAP; - } else if (!format.hasUvOffset(1)) { - VertexFormat result = new VertexFormat(format); - result.addElement(DefaultVertexFormats.TEX_2S); - return result; - } - return format; - } - - public static int[] vertexToInts(float x, float y, float z, int color, TextureAtlasSprite texture, float u, float v, int normal) { - return new int[] { - Float.floatToRawIntBits(x), - Float.floatToRawIntBits(y), - Float.floatToRawIntBits(z), - color, - Float.floatToRawIntBits(texture.getInterpolatedU(u)), - Float.floatToRawIntBits(texture.getInterpolatedV(v)), - normal - }; - } - - public static int calculatePackedNormal(float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4) { - float xp = x4-x2; - float yp = y4-y2; - float zp = z4-z2; - - float xq = x3-x1; - float yq = y3-y1; - float zq = z3-z1; - - //Cross Product - float xn = yq*zp - zq*yp; - float yn = zq*xp - xq*zp; - float zn = xq*yp - yq*xp; - - //Normalize - float norm = (float)Math.sqrt(xn*xn + yn*yn + zn*zn); - final float SMALL_LENGTH = 1.0E-4F; //Vec3d.normalise() uses this - if (norm < SMALL_LENGTH) norm = 1.0F; // protect against degenerate quad - - norm = 1.0F / norm; - xn *= norm; - yn *= norm; - zn *= norm; - - int x = ((byte)(xn * 127)) & 0xFF; - int y = ((byte)(yn * 127)) & 0xFF; - int z = ((byte)(zn * 127)) & 0xFF; - return x | (y << 0x08) | (z << 0x10); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/RoadFactoryBakedModel.java b/src/main/java/com/silvaniastudios/roads/client/model/RoadFactoryBakedModel.java deleted file mode 100644 index 1a1f09fe..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/RoadFactoryBakedModel.java +++ /dev/null @@ -1,157 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import java.awt.Color; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -import javax.vecmath.Matrix4f; - -import org.apache.commons.lang3.tuple.Pair; - -import com.google.common.primitives.Ints; -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.world.World; - -public class RoadFactoryBakedModel implements IBakedModel { - - private IBakedModel model; - float p = 1/16F; - private CatsEyeOverrideList overrideList; - String rot; - - public RoadFactoryBakedModel(IBakedModel model, String rot) { - this.model = model; - this.rot = rot; - this.overrideList = new CatsEyeOverrideList(this); - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - List quadList = new LinkedList(); - quadList.addAll(model.getQuads(state, side, rand)); - - if (side == null) { - return model.getQuads(state, side, rand); - } - - TextureAtlasSprite tex = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/machine_vent_back_on"); - - if (rot.equalsIgnoreCase("north")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 9.25F*p, 2F *p, 1.74F*p, - 2.5F *p, 2F *p, 1.74F*p, - 2.5F *p, 6.5F*p, 1.74F*p, - 9.25F*p, 6.5F*p, 1.74F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("west")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 1.74F*p, 2F *p, 6.75F*p, - 1.74F*p, 2F *p, 13.5F*p, - 1.74F*p, 6.5F*p, 13.5F*p, - 1.74F*p, 6.5F*p, 6.75F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("south")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 6.75F*p, 2F *p, 14.26F*p, - 13.5F*p, 2F *p, 14.26F*p, - 13.5F*p, 6.5F*p, 14.26F*p, - 6.75F*p, 6.5F*p, 14.26F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("east")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 14.26F*p, 2F *p, 9.25F*p, - 14.26F*p, 2F *p, 2.5F *p, - 14.26F*p, 6.5F*p, 2.5F *p, - 14.26F*p, 6.5F*p, 9.25F*p), 0.007F)); - } - - - return quadList; - } - - private BakedQuad light(TextureAtlasSprite texture, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4) { - int packednormal; - packednormal = RenderHelper.calculatePackedNormal(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4); - return new BakedQuad(Ints.concat( - RenderHelper.vertexToInts(x1, y1, z1, Color.WHITE.getRGB(), texture, 16, 16, packednormal), - RenderHelper.vertexToInts(x2, y2, z2, Color.WHITE.getRGB(), texture, 16, 0, packednormal), - RenderHelper.vertexToInts(x3, y3, z3, Color.WHITE.getRGB(), texture, 0, 0, packednormal), - RenderHelper.vertexToInts(x4, y4, z4, Color.WHITE.getRGB(), texture, 0, 16, packednormal)), - 0, EnumFacing.SOUTH, texture, true, net.minecraft.client.renderer.vertex.DefaultVertexFormats.ITEM); - } - - @Override - public boolean isAmbientOcclusion() { - return model.isAmbientOcclusion(); - } - - @Override - public boolean isGui3d() { - return model.isGui3d(); - } - - @Override - public boolean isBuiltInRenderer() { - return false; - } - - @Override - public TextureAtlasSprite getParticleTexture() { - return model.getParticleTexture(); - } - - @Override - public ItemOverrideList getOverrides() { - return this.overrideList; - } - - @SuppressWarnings("deprecation") - @Override - public ItemCameraTransforms getItemCameraTransforms() { - return model.getItemCameraTransforms(); - } - - @Override - public Pair handlePerspective(ItemCameraTransforms.TransformType cameraTransformType) { - Matrix4f matrix4f = model.handlePerspective(cameraTransformType).getRight(); - return Pair.of(this, matrix4f); - } - - public RoadFactoryBakedModel setCurrentItemStack(ItemStack stack) { - return this; - } - - private static class CatsEyeOverrideList extends ItemOverrideList { - private RoadFactoryBakedModel model; - - public CatsEyeOverrideList(RoadFactoryBakedModel model) { - super(Collections.emptyList()); - this.model = model; - } - - @Override - public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) { - return this.model.setCurrentItemStack(stack); - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/RoadFactoryRenderer.java b/src/main/java/com/silvaniastudios/roads/client/model/RoadFactoryRenderer.java deleted file mode 100644 index 12539289..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/RoadFactoryRenderer.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryContainer; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryEntity; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraftforge.client.model.animation.FastTESR; -import net.minecraftforge.fluids.FluidStack; - -public class RoadFactoryRenderer extends FastTESR { - - private static float p = 1/16; //one "pixel" - - @Override - public void renderTileEntityFast(RoadFactoryEntity te, double x, double y, double z, float partialTicks, int destroyStage, float partial, BufferBuilder buffer) { - FluidStack fluid = te.tarFluid.getFluid(); - - int meta = te.getBlockType().getMetaFromState(te.getState()); - if (fluid != null && fluid.amount > 0) { - renderTankFluid(buffer, x, y, z, fluid, meta, te.isFilling, te); - } - - ItemStack out1 = te.inventory.getStackInSlot(RoadFactoryContainer.OUTPUT_1); - ItemStack out2 = te.inventory.getStackInSlot(RoadFactoryContainer.OUTPUT_2); - ItemStack out3 = te.inventory.getStackInSlot(RoadFactoryContainer.OUTPUT_3); - ItemStack out4 = te.inventory.getStackInSlot(RoadFactoryContainer.OUTPUT_4); - - if (!out1.isEmpty()) { renderBlock(buffer, x, y, z, meta, out1, 0); } - if (!out2.isEmpty()) { renderBlock(buffer, x, y, z, meta, out2, 1); } - if (!out3.isEmpty()) { renderBlock(buffer, x, y, z, meta, out3, 2); } - if (!out4.isEmpty()) { renderBlock(buffer, x, y, z, meta, out4, 3); } - } - - private static void renderTankFluid(final BufferBuilder buffer, double x, double y, double z, FluidStack fluid, int meta, boolean isFilling, RoadFactoryEntity te) { - if (fluid != null) { - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(fluid.getFluid().getStill(fluid).toString()); - if (meta == 0) { RenderHelper.renderTankFluid(buffer, x, y, z, 1.5F, 0.25F, 12F, 2.5F, 11.75F, 2.5F, fluid.amount, RoadFactoryEntity.TANK_CAP, sprite); } - if (meta == 1) { RenderHelper.renderTankFluid(buffer, x, y, z, 1.5F, 0.25F, 1.5F, 2.5F, 11.75F, 2.5F, fluid.amount, RoadFactoryEntity.TANK_CAP, sprite); } - if (meta == 2) { RenderHelper.renderTankFluid(buffer, x, y, z, 12F, 0.25F, 1.5F, 2.5F, 11.75F, 2.5F, fluid.amount, RoadFactoryEntity.TANK_CAP, sprite); } - if (meta == 3) { RenderHelper.renderTankFluid(buffer, x, y, z, 12F, 0.25F, 12F, 2.5F, 11.75F, 2.5F, fluid.amount, RoadFactoryEntity.TANK_CAP, sprite); } - - if (isFilling) { - if (meta == 0) { RenderHelper.renderTankFluid(buffer, x, y, z, 2.5F, 0.25F, 13F, 0.5F, 12F, 0.5F, fluid.amount, RoadFactoryEntity.TANK_CAP, sprite); } - if (meta == 1) { RenderHelper.renderTankFluid(buffer, x, y, z, 2.5F, 0.25F, 2.5F, 0.5F, 12F, 0.5F, fluid.amount, RoadFactoryEntity.TANK_CAP, sprite); } - if (meta == 2) { RenderHelper.renderTankFluid(buffer, x, y, z, 13F, 0.25F, 2.5F, 0.5F, 12F, 0.5F, fluid.amount, RoadFactoryEntity.TANK_CAP, sprite); } - if (meta == 3) { RenderHelper.renderTankFluid(buffer, x, y, z, 13F, 0.25F, 13F, 0.5F, 12F, 0.5F, fluid.amount, RoadFactoryEntity.TANK_CAP, sprite); } - } - } - } - - - - @SuppressWarnings("deprecation") - private static void renderBlock(final BufferBuilder buffer, double x, double y, double z, int meta, ItemStack stack, int slot) { - if (stack.getItem() instanceof ItemBlock) { - float offset = (3.25F*p) * slot; - - ItemBlock ib = (ItemBlock) stack.getItem(); - IBlockState state = ib.getBlock().getStateFromMeta(stack.getItemDamage()); - IBakedModel model = Minecraft.getMinecraft().getBlockRendererDispatcher().getBlockModelShapes().getModelForState(state); - TextureAtlasSprite sprite = model.getParticleTexture(); - - if (meta == 0) { RenderHelper.renderCube(buffer, x, y, z, 12.125F*p, 4.25F*p, 2.375F*p + offset, 1.5F*p, 1.5F*p, 1.5F*p, sprite); } - if (meta == 1) { RenderHelper.renderCube(buffer, x, y, z, 12.125F*p - offset, 4.25F*p, 12.125F*p, 1.5F*p, 1.5F*p, 1.5F*p, sprite); } - if (meta == 2) { RenderHelper.renderCube(buffer, x, y, z, 2.375F*p, 4.25F*p, 12.125F*p - offset, 1.5F*p, 1.5F*p, 1.5F*p, sprite); } - if (meta == 3) { RenderHelper.renderCube(buffer, x, y, z, 2.375F*p + offset, 4.25F*p, 2.375F*p, 1.5F*p, 1.5F*p, 1.5F*p, sprite); } - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/TarDistillerBakedModel.java b/src/main/java/com/silvaniastudios/roads/client/model/TarDistillerBakedModel.java deleted file mode 100644 index afec82d6..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/TarDistillerBakedModel.java +++ /dev/null @@ -1,181 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import java.awt.Color; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -import javax.vecmath.Matrix4f; - -import org.apache.commons.lang3.tuple.Pair; - -import com.google.common.primitives.Ints; -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.world.World; - -public class TarDistillerBakedModel implements IBakedModel { - - private IBakedModel model; - float p = 1/16F; - private CatsEyeOverrideList overrideList; - String rot; - - public TarDistillerBakedModel(IBakedModel model, String rot) { - this.model = model; - this.rot = rot; - this.overrideList = new CatsEyeOverrideList(this); - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - List quadList = new LinkedList(); - quadList.addAll(model.getQuads(state, side, rand)); - - if (side == null) { - return model.getQuads(state, side, rand); - } - - TextureAtlasSprite tex = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/machine_vent_back_on"); - - if (rot.equalsIgnoreCase("north")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 9.75F*p, 1.75F*p, 1.74F*p, - 2.5F *p, 1.75F*p, 1.74F*p, - 2.5F *p, 6F*p, 1.74F*p, - 9.75F*p, 6F*p, 1.74F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2.5F *p, 1.75F*p, 14.26F*p, - 9.75F*p, 1.75F*p, 14.26F*p, - 9.75F*p, 6F*p, 14.26F*p, - 2.5F *p, 6F*p, 14.26F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("west")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 1.74F*p, 1.75F*p, (16-9.75F)*p, - 1.74F*p, 1.75F*p, (16-2.5F) *p, - 1.74F*p, 6F*p, (16-2.5F) *p, - 1.74F*p, 6F*p, (16-9.75F)*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 14.26F*p, 1.75F*p, (16-2.5F) *p, - 14.26F*p, 1.75F*p, (16-9.75F)*p, - 14.26F*p, 6F*p, (16-9.75F)*p, - 14.26F*p, 6F*p, (16-2.5F) *p), 0.007F)); - } - - if (rot.equalsIgnoreCase("south")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - (16-2.5F) *p, 1.75F*p, 1.74F*p, - (16-9.75F)*p, 1.75F*p, 1.74F*p, - (16-9.75F)*p, 6F*p, 1.74F*p, - (16-2.5F) *p, 6F*p, 1.74F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - (16-9.75F)*p, 1.75F*p, 14.26F*p, - (16-2.5F) *p, 1.75F*p, 14.26F*p, - (16-2.5F) *p, 6F*p, 14.26F*p, - (16-9.75F)*p, 6F*p, 14.26F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("east")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 1.74F*p, 1.75F*p, 2.5F *p, - 1.74F*p, 1.75F*p, 9.75F*p, - 1.74F*p, 6F*p, 9.75F*p, - 1.74F*p, 6F*p, 2.5F *p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 14.26F*p, 1.75F*p, 9.75F*p, - 14.26F*p, 1.75F*p, 2.5F *p, - 14.26F*p, 6F*p, 2.5F *p, - 14.26F*p, 6F*p, 9.75F*p), 0.007F)); - } - - - return quadList; - } - - private BakedQuad light(TextureAtlasSprite texture, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4) { - int packednormal; - packednormal = RenderHelper.calculatePackedNormal(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4); - return new BakedQuad(Ints.concat( - RenderHelper.vertexToInts(x1, y1, z1, Color.WHITE.getRGB(), texture, 16, 16, packednormal), - RenderHelper.vertexToInts(x2, y2, z2, Color.WHITE.getRGB(), texture, 16, 0, packednormal), - RenderHelper.vertexToInts(x3, y3, z3, Color.WHITE.getRGB(), texture, 0, 0, packednormal), - RenderHelper.vertexToInts(x4, y4, z4, Color.WHITE.getRGB(), texture, 0, 16, packednormal)), - 0, EnumFacing.SOUTH, texture, true, net.minecraft.client.renderer.vertex.DefaultVertexFormats.ITEM); - } - - @Override - public boolean isAmbientOcclusion() { - return model.isAmbientOcclusion(); - } - - @Override - public boolean isGui3d() { - return model.isGui3d(); - } - - @Override - public boolean isBuiltInRenderer() { - return false; - } - - @Override - public TextureAtlasSprite getParticleTexture() { - return model.getParticleTexture(); - } - - @Override - public ItemOverrideList getOverrides() { - return this.overrideList; - } - - @SuppressWarnings("deprecation") - @Override - public ItemCameraTransforms getItemCameraTransforms() { - return model.getItemCameraTransforms(); - } - - @Override - public Pair handlePerspective(ItemCameraTransforms.TransformType cameraTransformType) { - Matrix4f matrix4f = model.handlePerspective(cameraTransformType).getRight(); - return Pair.of(this, matrix4f); - } - - public TarDistillerBakedModel setCurrentItemStack(ItemStack stack) { - return this; - } - - private static class CatsEyeOverrideList extends ItemOverrideList { - private TarDistillerBakedModel model; - - public CatsEyeOverrideList(TarDistillerBakedModel model) { - super(Collections.emptyList()); - this.model = model; - } - - @Override - public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) { - return this.model.setCurrentItemStack(stack); - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/TarDistillerRenderer.java b/src/main/java/com/silvaniastudios/roads/client/model/TarDistillerRenderer.java deleted file mode 100644 index d383ed62..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/TarDistillerRenderer.java +++ /dev/null @@ -1,168 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerContainer; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerEntity; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraftforge.client.model.animation.FastTESR; -import net.minecraftforge.fluids.FluidStack; - -public class TarDistillerRenderer extends FastTESR { - - private static float p = 1/16F; //one "pixel" - - @Override - public void renderTileEntityFast(TarDistillerEntity te, double x, double y, double z, float partialTicks, int destroyStage, float partial, BufferBuilder buffer) { - FluidStack fluidIn = te.fluidInput.getFluid(); - FluidStack fluidTar = te.fluidOutput1.getFluid(); - FluidStack fluidOut2 = te.fluidOutput2.getFluid(); - - int meta = te.getBlockType().getMetaFromState(te.getState()); - - if (fluidIn != null && fluidIn.amount > 0) { - if (fluidIn.amount < TarDistillerEntity.TANK_CAP - 1000 && !te.inventory.getStackInSlot(TarDistillerContainer.FLUID_IN).isEmpty()) { - renderTankFluid(buffer, x, y, z, 0, fluidIn, meta, true); - } else { - renderTankFluid(buffer, x, y, z, 0, fluidIn, meta, false); - } - } - - if (fluidTar != null && fluidTar.amount > 0) { - if (fluidTar.amount < TarDistillerEntity.TANK_CAP - 1000 && !te.inventory.getStackInSlot(TarDistillerContainer.INPUT).isEmpty()) { - renderTankFluid(buffer, x, y, z, 1, fluidTar, meta, true); - } else { - renderTankFluid(buffer, x, y, z, 1, fluidTar, meta, false); - } - } - - if (fluidOut2 != null && fluidOut2.amount > 0) { - renderTankFluid(buffer, x, y, z, 2, fluidOut2, meta, false); - } - } - - private static void renderTankFluid(final BufferBuilder buffer, double x, double y, double z, int tankId, FluidStack fluid, int meta, boolean isFilling) { - float fill = 0F; - if (fluid != null) { - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(fluid.getFluid().getStill(fluid).toString()); - if (tankId == 0) { - if (meta == 0) { RenderHelper.renderTankFluid(buffer, x, y, z, 1.5F, 0.25F, 6.75F, 2.5F, 11.75F, 2.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 1) { RenderHelper.renderTankFluid(buffer, x, y, z, 6.75F, 0.25F, 1.5F, 2.5F, 11.75F, 2.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 2) { RenderHelper.renderTankFluid(buffer, x, y, z, 12F, 0.25F, 6.75F, 2.5F, 11.75F, 2.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 3) { RenderHelper.renderTankFluid(buffer, x, y, z, 6.75F, 0.25F, 12F, 2.5F, 11.75F, 2.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - - if (isFilling) { - if (meta == 0) { RenderHelper.renderTankFluid(buffer, x, y, z, 2.5F, 0.25F, 7.75F, 0.5F, 12F, 0.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 1) { RenderHelper.renderTankFluid(buffer, x, y, z, 7.75F, 0.25F, 2.5F, 0.5F, 12F, 0.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 2) { RenderHelper.renderTankFluid(buffer, x, y, z, 13F, 0.25F, 7.75F, 0.5F, 12F, 0.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 3) { RenderHelper.renderTankFluid(buffer, x, y, z, 7.75F, 0.25F, 13F, 0.5F, 12F, 0.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - } - - fill = 0.00171875F * RenderHelper.getPercentage(fluid.amount, TarDistillerEntity.TANK_CAP); - - float xF = (float) x; - float yF = (float) y; - float zF = (float) z; - - if (meta == 0) { - RenderHelper.renderFlatQuad(buffer, sprite, xF + 3.5F*p, yF + 9F*p, zF + 14.51F*p, xF + 3.5F*p, yF + (9F*p) + fill, zF + 14.51F*p, xF + 3F*p, yF + (9F*p) + fill, zF + 14.51F*p, xF + 3F*p, yF + 9F*p, zF + 14.51F*p); //South side - RenderHelper.renderFlatQuad(buffer, sprite, xF + 8.75F*p, yF + 9F*p, zF + 1.49F*p, xF + 8.75F*p, yF + (9F*p) + fill, zF + 1.49F*p, xF + 9.25F*p, yF + (9F*p) + fill, zF + 1.49F*p, xF + 9.25F*p, yF + 9F*p, zF + 1.49F*p); //North side - } - - if (meta == 1) { - RenderHelper.renderFlatQuad(buffer, sprite, xF + 1.49F*p, yF + 9F*p, zF + 3.5F*p, xF + 1.49F*p, yF + (9F*p) + fill, zF + 3.5F*p, xF + 1.49F*p, yF + (9F*p) + fill, zF + 3F*p, xF + 1.49F*p, yF + 9F*p, zF + 3F*p); //West side - RenderHelper.renderFlatQuad(buffer, sprite, xF + 14.51F*p, yF + 9F*p, zF + 8.75F*p, xF + 14.51F*p, yF + (9F*p) + fill, zF + 8.75F*p, xF + 14.51F*p, yF + (9F*p) + fill, zF + 9.25F*p, xF + 14.51F*p, yF + 9F*p, zF + 9.25F*p); //East Side - } - - if (meta == 2) { - RenderHelper.renderFlatQuad(buffer, sprite, xF + 12.5F*p, yF + 9F*p, zF + 1.49F*p, xF + 12.5F*p, yF + (9F*p) + fill, zF + 1.49F*p, xF + 13F*p, yF + (9F*p) + fill, zF + 1.49F*p, xF + 13F*p, yF + 9F*p, zF + 1.49F*p); //North Side - RenderHelper.renderFlatQuad(buffer, sprite, xF + 6.75F*p, yF + 9F*p, zF + 14.51F*p, xF + 6.75F*p, yF + (9F*p) + fill, zF + 14.51F*p, xF + 7.25F*p, yF + (9F*p) + fill, zF + 14.51F*p, xF + 7.25F*p, yF + 9F*p, zF + 14.51F*p); //South side - } - - if (meta == 3) { - RenderHelper.renderFlatQuad(buffer, sprite, xF + 14.51F*p, yF + 9F*p, zF + 12.5F*p, xF + 14.51F*p, yF + (9F*p) + fill, zF + 12.5F*p, xF + 14.51F*p, yF + (9F*p) + fill, zF + 13F*p, xF + 14.51F*p, yF + 9F*p, zF + 13F*p); //East side - RenderHelper.renderFlatQuad(buffer, sprite, xF + 1.49F*p, yF + 9F*p, zF + 6.75F*p, xF + 1.49F*p, yF + (9F*p) + fill, zF + 6.75F*p, xF + 1.49F*p, yF + (9F*p) + fill, zF + 7.25F*p, xF + 1.49F*p, yF + 9F*p, zF + 7.25F*p); //West side - } - } - - if (tankId == 1) { - if (meta == 0) { RenderHelper.renderTankFluid(buffer, x, y, z, 11.75F, 0.25F, 1.5F, 2.5F, 11.75F, 2.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 1) { RenderHelper.renderTankFluid(buffer, x, y, z, 12F, 0.25F, 11.75F, 2.5F, 11.75F, 2.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 2) { RenderHelper.renderTankFluid(buffer, x, y, z, 1.75F, 0.25F, 12F, 2.5F, 11.75F, 2.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 3) { RenderHelper.renderTankFluid(buffer, x, y, z, 1.5F, 0.25F, 1.75F, 2.5F, 11.75F, 2.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - - if (isFilling) { - if (meta == 0) { RenderHelper.renderTankFluid(buffer, x, y, z, 12.75F, 0.25F, 2.5F, 0.5F, 12F, 0.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 1) { RenderHelper.renderTankFluid(buffer, x, y, z, 12.5F, 0.25F, 12.25F, 0.5F, 12F, 0.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 2) { RenderHelper.renderTankFluid(buffer, x, y, z, 2.75F, 0.25F, 13F, 0.5F, 12F, 0.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 3) { RenderHelper.renderTankFluid(buffer, x, y, z, 2.5F, 0.25F, 2.75F, 0.5F, 12F, 0.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - } - - fill = 0.00171875F * RenderHelper.getPercentage(fluid.amount, TarDistillerEntity.TANK_CAP); - - float xF = (float) x; - float yF = (float) y; - float zF = (float) z; - - if (meta == 0) { - RenderHelper.renderFlatQuad(buffer, sprite, xF + 8F*p, yF + 9F*p, zF + 14.51F*p, xF + 8F*p, yF + (9F*p) + fill, zF + 14.51F*p, xF + 7.5F*p, yF + (9F*p) + fill, zF + 14.51F*p, xF + 7.5F*p, yF + 9F*p, zF + 14.51F*p); //South side - RenderHelper.renderFlatQuad(buffer, sprite, xF + 4.25F*p, yF + 9F*p, zF + 1.49F*p, xF + 4.25F*p, yF + (9F*p) + fill, zF + 1.49F*p, xF + 4.75F*p, yF + (9F*p) + fill, zF + 1.49F*p, xF + 4.75F*p, yF + 9F*p, zF + 1.49F*p); //North side - } - - if (meta == 1) { - RenderHelper.renderFlatQuad(buffer, sprite, xF + 1.49F*p, yF + 9F*p, zF + 8F*p, xF + 1.49F*p, yF + (9F*p) + fill, zF + 8F*p, xF + 1.49F*p, yF + (9F*p) + fill, zF + 7.5F*p, xF + 1.49F*p, yF + 9F*p, zF + 7.5F*p); //West Side - RenderHelper.renderFlatQuad(buffer, sprite, xF + 14.51F*p, yF + 9F*p, zF + 4.25F*p, xF + 14.51F*p, yF + (9F*p) + fill, zF + 4.25F*p, xF + 14.51F*p, yF + (9F*p) + fill, zF + 4.75F*p, xF + 14.51F*p, yF + 9F*p, zF + 4.75F*p); //East Side - } - - if (meta == 2) { - RenderHelper.renderFlatQuad(buffer, sprite, xF + 8F*p, yF + 9F*p, zF + 1.49F*p, xF + 8F*p, yF + (9F*p) + fill, zF + 1.49F*p, xF + 8.5F*p, yF + (9F*p) + fill, zF + 1.49F*p, xF + 8.5F*p, yF + 9F*p, zF + 1.49F*p); //North Side - RenderHelper.renderFlatQuad(buffer, sprite, xF + 11.25F*p, yF + 9F*p, zF + 14.51F*p, xF + 11.25F*p, yF + (9F*p) + fill, zF + 14.51F*p, xF + 11.75F*p, yF + (9F*p) + fill, zF + 14.51F*p, xF + 11.75F*p, yF + 9F*p, zF + 14.51F*p); //South side - } - - if (meta == 3) { - RenderHelper.renderFlatQuad(buffer, sprite, xF + 14.51F*p, yF + 9F*p, zF + 8F*p, xF + 14.51F*p, yF + (9F*p) + fill, zF + 8F*p, xF + 14.51F*p, yF + (9F*p) + fill, zF + 8.5F*p, xF + 14.51F*p, yF + 9F*p, zF + 8.5F*p); //East side - RenderHelper.renderFlatQuad(buffer, sprite, xF + 1.49F*p, yF + 9F*p, zF + 11.25F*p, xF + 1.49F*p, yF + (9F*p) + fill, zF + 11.25F*p, xF + 1.49F*p, yF + (9F*p) + fill, zF + 11.75F*p, xF + 1.49F*p, yF + 9F*p, zF + 11.75F*p); //West side - } - } - if (tankId == 2) { - if (meta == 0) { RenderHelper.renderTankFluid(buffer, x, y, z, 11.75F, 0.25F, 12F, 2.5F, 11.75F, 2.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 1) { RenderHelper.renderTankFluid(buffer, x, y, z, 1.5F, 0.25F, 11.75F, 2.5F, 11.75F, 2.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 2) { RenderHelper.renderTankFluid(buffer, x, y, z, 1.75F, 0.25F, 1.5F, 2.5F, 11.75F, 2.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 3) { RenderHelper.renderTankFluid(buffer, x, y, z, 12F, 0.25F, 1.75F, 2.5F, 11.75F, 2.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - - if (isFilling) { - if (meta == 0) { RenderHelper.renderTankFluid(buffer, x, y, z, 12.5F, 0.25F , 13F, 0.5F, 12F, 0.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 1) { RenderHelper.renderTankFluid(buffer, x, y, z, 2.5F, 0.25F, 12.75F, 0.5F, 12F, 0.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 2) { RenderHelper.renderTankFluid(buffer, x, y, z, 2.75F, 0.25F, 2.5F, 0.5F, 12F, 0.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - if (meta == 3) { RenderHelper.renderTankFluid(buffer, x, y, z, 13F, 0.25F, 2.75F, 0.5F, 12F, 0.5F, fluid.amount, TarDistillerEntity.TANK_CAP, sprite); } - } - - fill = 0.00171875F * RenderHelper.getPercentage(fluid.amount, TarDistillerEntity.TANK_CAP); - - float xF = (float) x; - float yF = (float) y; - float zF = (float) z; - - if (meta == 0) { - RenderHelper.renderFlatQuad(buffer, sprite, xF + 8.75F*p, yF + 9F*p, zF + 14.51F*p, xF + 8.75F*p, yF + (9F*p) + fill, zF + 14.51F*p, xF + 9.25F*p, yF + (9F*p) + fill, zF + 14.51F*p, xF + 9.25F*p, yF + 9F*p, zF + 14.51F*p); //South side - RenderHelper.renderFlatQuad(buffer, sprite, xF + 3F*p, yF + 9F*p, zF + 1.49F*p, xF + 3F*p, yF + (9F*p) + fill, zF + 1.49F*p, xF + 3.5F*p, yF + (9F*p) + fill, zF + 1.49F*p, xF + 3.5F*p, yF + 9F*p, zF + 1.49F*p); //North side - } - if (meta == 1) { - RenderHelper.renderFlatQuad(buffer, sprite, xF + 1.49F*p, yF + 9F*p, zF + 9.25F*p, xF + 1.49F*p, yF + (9F*p) + fill, zF + 9.25F*p, xF + 1.49F*p, yF + (9F*p) + fill, zF + 8.75F*p, xF + 1.49F*p, yF + 9F*p, zF + 8.75F*p); //West Side - RenderHelper.renderFlatQuad(buffer, sprite, xF + 14.51F*p, yF + 9F*p, zF + 3F*p, xF + 14.51F*p, yF + (9F*p) + fill, zF + 3F*p, xF + 14.51F*p, yF + (9F*p) + fill, zF + 3.5F*p, xF + 14.51F*p, yF + 9F*p, zF + 3.5F*p); //East Side - } - - if (meta == 2) { - RenderHelper.renderFlatQuad(buffer, sprite, xF + 6.75F*p, yF + 9F*p, zF + 1.49F*p, xF + 6.75F*p, yF + (9F*p) + fill, zF + 1.49F*p, xF + 7.25F*p, yF + (9F*p) + fill, zF + 1.49F*p, xF + 7.25F*p, yF + 9F*p, zF + 1.49F*p); //North Side - RenderHelper.renderFlatQuad(buffer, sprite, xF + 12.5F*p, yF + 9F*p, zF + 14.51F*p, xF + 12.5F*p, yF + (9F*p) + fill, zF + 14.51F*p, xF + 13F*p, yF + (9F*p) + fill, zF + 14.51F*p, xF + 13F*p, yF + 9F*p, zF + 14.51F*p); //South side - } - - if (meta == 3) { - RenderHelper.renderFlatQuad(buffer, sprite, xF + 14.51F*p, yF + 9F*p, zF + 6.75F*p, xF + 14.51F*p, yF + (9F*p) + fill, zF + 6.75F*p, xF + 14.51F*p, yF + (9F*p) + fill, zF + 7.25F*p, xF + 14.51F*p, yF + 9F*p, zF + 7.25F*p); //East side - RenderHelper.renderFlatQuad(buffer, sprite, xF + 1.49F*p, yF + 9F*p, zF + 12.5F*p, xF + 1.49F*p, yF + (9F*p) + fill, zF + 12.5F*p, xF + 1.49F*p, yF + (9F*p) + fill, zF + 13F*p, xF + 1.49F*p, yF + 9F*p, zF + 13F*p); //West side - } - } - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/TarmacCutterBakedModel.java b/src/main/java/com/silvaniastudios/roads/client/model/TarmacCutterBakedModel.java deleted file mode 100644 index 554234a1..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/TarmacCutterBakedModel.java +++ /dev/null @@ -1,179 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import java.awt.Color; -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -import javax.vecmath.Matrix4f; - -import org.apache.commons.lang3.tuple.Pair; - -import com.google.common.primitives.Ints; -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.world.World; - -public class TarmacCutterBakedModel implements IBakedModel { - - private IBakedModel model; - float p = 1/16F; - private CatsEyeOverrideList overrideList; - String rot; - - public TarmacCutterBakedModel(IBakedModel model, String rot) { - this.model = model; - this.rot = rot; - this.overrideList = new CatsEyeOverrideList(this); - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - List quadList = new LinkedList(); - quadList.addAll(model.getQuads(state, side, rand)); - - if (side == null) { - return model.getQuads(state, side, rand); - } - - TextureAtlasSprite tex = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/machine_vent_back_on"); - - if (rot.equalsIgnoreCase("north")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 0.74F*p, 1.75F*p, 2F *p, - 0.74F*p, 1.75F*p, 14F*p, - 0.74F*p, 7.25F*p, 14F*p, - 0.74F*p, 7.25F*p, 2F *p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 15.26F*p, 1.75F*p, 14F*p, - 15.26F*p, 1.75F*p, 2F *p, - 15.26F*p, 7.25F*p, 2F *p, - 15.26F*p, 7.25F*p, 14F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("west")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 14F*p, 1.75F*p, 0.74F*p, - 2F *p, 1.75F*p, 0.74F*p, - 2F *p, 7.25F*p, 0.74F*p, - 14F*p, 7.25F*p, 0.74F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2F *p, 1.75F*p, 15.26F*p, - 14F*p, 1.75F*p, 15.26F*p, - 14F*p, 7.25F*p, 15.26F*p, - 2F *p, 7.25F*p, 15.26F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("south")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 0.74F*p, 1.75F*p, 2F *p, - 0.74F*p, 1.75F*p, 14F*p, - 0.74F*p, 7.25F*p, 14F*p, - 0.74F*p, 7.25F*p, 2F *p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 15.26F*p, 1.75F*p, 14F*p, - 15.26F*p, 1.75F*p, 2F *p, - 15.26F*p, 7.25F*p, 2F *p, - 15.26F*p, 7.25F*p, 14F*p), 0.007F)); - } - - if (rot.equalsIgnoreCase("east")) { - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 14F*p, 1.75F*p, 0.74F*p, - 2F *p, 1.75F*p, 0.74F*p, - 2F *p, 7.25F*p, 0.74F*p, - 14F*p, 7.25F*p, 0.74F*p), 0.007F)); - quadList.add(RenderHelper.setBrightTexture(light(tex, - //SW SE NE NW - 2F *p, 1.75F*p, 15.26F*p, - 14F*p, 1.75F*p, 15.26F*p, - 14F*p, 7.25F*p, 15.26F*p, - 2F *p, 7.25F*p, 15.26F*p), 0.007F)); - } - return quadList; - } - - private BakedQuad light(TextureAtlasSprite texture, float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3, float x4, float y4, float z4) { - int packednormal; - packednormal = RenderHelper.calculatePackedNormal(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4); - return new BakedQuad(Ints.concat( - RenderHelper.vertexToInts(x1, y1, z1, Color.WHITE.getRGB(), texture, 16, 16, packednormal), - RenderHelper.vertexToInts(x2, y2, z2, Color.WHITE.getRGB(), texture, 16, 0, packednormal), - RenderHelper.vertexToInts(x3, y3, z3, Color.WHITE.getRGB(), texture, 0, 0, packednormal), - RenderHelper.vertexToInts(x4, y4, z4, Color.WHITE.getRGB(), texture, 0, 16, packednormal)), - 0, EnumFacing.SOUTH, texture, true, net.minecraft.client.renderer.vertex.DefaultVertexFormats.ITEM); - } - - @Override - public boolean isAmbientOcclusion() { - return model.isAmbientOcclusion(); - } - - @Override - public boolean isGui3d() { - return model.isGui3d(); - } - - @Override - public boolean isBuiltInRenderer() { - return false; - } - - @Override - public TextureAtlasSprite getParticleTexture() { - return model.getParticleTexture(); - } - - @Override - public ItemOverrideList getOverrides() { - return this.overrideList; - } - - @SuppressWarnings("deprecation") - @Override - public ItemCameraTransforms getItemCameraTransforms() { - return model.getItemCameraTransforms(); - } - - @Override - public Pair handlePerspective(ItemCameraTransforms.TransformType cameraTransformType) { - Matrix4f matrix4f = model.handlePerspective(cameraTransformType).getRight(); - return Pair.of(this, matrix4f); - } - - public TarmacCutterBakedModel setCurrentItemStack(ItemStack stack) { - return this; - } - - private static class CatsEyeOverrideList extends ItemOverrideList { - private TarmacCutterBakedModel model; - - public CatsEyeOverrideList(TarmacCutterBakedModel model) { - super(Collections.emptyList()); - this.model = model; - } - - @Override - public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) { - return this.model.setCurrentItemStack(stack); - } - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/TarmacCutterRenderer.java b/src/main/java/com/silvaniastudios/roads/client/model/TarmacCutterRenderer.java deleted file mode 100644 index 2704158a..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/TarmacCutterRenderer.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.silvaniastudios.roads.client.model; - -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterEntity; - -import net.minecraft.client.renderer.BufferBuilder; -import net.minecraftforge.client.model.animation.FastTESR; - -public class TarmacCutterRenderer extends FastTESR{ - - @Override - public void renderTileEntityFast(TarmacCutterEntity te, double x, double y, double z, float partialTicks, int destroyStage, float partial, BufferBuilder buffer) { - - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalBakedModelBase.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalBakedModelBase.java deleted file mode 100644 index a8f8422d..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalBakedModelBase.java +++ /dev/null @@ -1,147 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.diagonal.HalfBlock; -import com.silvaniastudios.roads.blocks.diagonal.RoadBlockDiagonal; -import com.silvaniastudios.roads.blocks.diagonal.ShapeLibrary; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.math.Vec3d; -import net.minecraftforge.client.model.pipeline.UnpackedBakedQuad; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class DiagonalBakedModelBase implements IBakedModel { - - protected VertexFormat format; - Minecraft mc; - - public DiagonalBakedModelBase(IModelState state, VertexFormat format, Function bakedTextureGetter) { - this.format = format; - mc = Minecraft.getMinecraft(); - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - - if (side != null) { - return Collections.emptyList(); - } - - IExtendedBlockState extendedState = (IExtendedBlockState) state; - EnumFacing facing = extendedState.getValue(RoadBlockDiagonal.FACING); - - HalfBlock blockLeft = new HalfBlock(extendedState, HalfBlock.HalfBlockSide.LEFT); - HalfBlock blockRight = new HalfBlock(extendedState, HalfBlock.HalfBlockSide.RIGHT); - - blockLeft.setPartnerBlock(blockRight); - blockRight.setPartnerBlock(blockLeft); - - return packQuads(facing, blockLeft, blockRight); - } - - //Overriden in subclasses - protected List packQuads(EnumFacing facing, HalfBlock blockLeft, HalfBlock blockRight) { - List quads = new ArrayList<>(); - return quads; - } - - @Override public ItemOverrideList getOverrides() { return null; } - @Override public boolean isAmbientOcclusion() { return true; } - @Override public boolean isGui3d() { return false; } - @Override public boolean isBuiltInRenderer() { return false; } - @Override public TextureAtlasSprite getParticleTexture() { return Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/road_block_standard"); } - @Override public ItemCameraTransforms getItemCameraTransforms() { return ItemCameraTransforms.DEFAULT; } - - - /* - * ### # # # #### #### # # # ##### #### # # - * # # # # # # # # # # # # # # # # # # # - * # # # # # # # # # # # # # # # # # # # - * # # # # ##### # # #### ##### ## #### #### # # - * # # # # # # # # # # # # # # # # # # # - * # ## # # # # # # # # # # # # # # # # - * #### ### # # #### #### # # # # ##### # # # - */ - - //Creation of a shape and converting it into Minecraft quads. - //Create the shape first (shapeTrapeziumLeft in this case) - //Apply rotation to all quads. Rotation can be any int 1-360 (or more I guess but why?). Pretty rotated blocks! - //Can rotate on X/Y/Z axis by calling Quad.rotateQuad[Axis] - - //After rotation, any post processing. If you want the shape to sit flush, the bottom face needs V flipping and both top and bottom need UVs updating. - //THIS ONLY WORKS ON MINECRAFT LOCKED ROTATIONS (0 90 180 270). If we're doing weird rotations we can't do this. F in chat. - //Finally convert to a baked quad and add to the list to return (Can do this in the first loop if we're not doing UV things) - - protected List createTriangle(List quads, boolean left, HalfBlock block, double width) { - List rawQuads = new ArrayList<>(); - - if (left) { - rawQuads = ShapeLibrary.shapeTriangleLeft(block, width, format); - } else { - rawQuads = ShapeLibrary.shapeTriangleRight(block, width, format); - } - - return shapeBuilder(rawQuads, quads, block); - } - - - protected List createTrapezium(List quads, boolean left, HalfBlock block, double widthN, double widthW) { - List rawQuads = new ArrayList<>(); - - if (left) { - rawQuads = ShapeLibrary.shapeTrapeziumLeft(block, widthN, widthW, format); - } else { - rawQuads = ShapeLibrary.shapeTrapeziumRight(block, widthN, widthW, format); - } - - return shapeBuilder(rawQuads, quads, block); - } - - //Works for most default shapes that assume 90 degree rotations. - protected List shapeBuilder(List rawQuads, List quads, HalfBlock block) { - for (int i = 0; i < rawQuads.size(); i++) { - if (rawQuads.get(i) != null) { - rawQuads.set(i, Quad.rotateQuadY(rawQuads.get(i), block.getRotation())); - } - } - - if (rawQuads.get(0) != null) { - rawQuads.get(0).updateUVs(); //Prevent UV rotation on top face - } - - if (rawQuads.get(1) != null) { - rawQuads.get(1).setFlipV(true); //Flip UVs for bottom face - rawQuads.get(1).updateUVs(); //Prevent UV rotation on bottom face - } - - for (int i = 0; i < rawQuads.size(); i++) { - if (rawQuads.get(i) != null) { - BakedQuad baked = rawQuads.get(i).createQuad(block.getColour()); - - if (i == 1 && block.isFluid()) { - baked = rawQuads.get(i).createUnnormalizedQuad(block.getColour()); //Unnormalized? abnormal? idk I'm not good at 3d rendering math stuff - } - - quads.add(baked); - } - } - - return quads; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalModelBase.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalModelBase.java deleted file mode 100644 index 730438fb..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalModelBase.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal; - -import java.util.Collection; -import java.util.Collections; -import java.util.function.Function; - -import com.google.common.collect.ImmutableSet; -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.model.TRSRTransformation; - -public class DiagonalModelBase implements IModel { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new DiagonalTriangleTriangleBakedModel(state, format, bakedTextureGetter, 1.0, 1.0, true); - } - - @Override - public Collection getDependencies() { - return Collections.emptySet(); - } - - @Override - public Collection getTextures() { - return ImmutableSet.of(new ResourceLocation(FurenikusRoads.MODID, "blocks/road_block_standard")); - } - - @Override - public IModelState getDefaultState() { - return TRSRTransformation.identity(); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalQuadQuadBakedModel.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalQuadQuadBakedModel.java deleted file mode 100644 index 08b97a82..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalQuadQuadBakedModel.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.blocks.diagonal.HalfBlock; - -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; - -public class DiagonalQuadQuadBakedModel extends DiagonalBakedModelBase { - - double widthN = 0.5; - double widthW = 1.0; - boolean left; - - public DiagonalQuadQuadBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter, double widthN, double widthW, boolean left) { - super(state, format, bakedTextureGetter); - this.widthN = widthN; - this.widthW = widthW; - this.left = left; - } - - @Override - protected List packQuads(EnumFacing facing, HalfBlock blockLeft, HalfBlock blockRight) { - List quads = new ArrayList<>(); - - if (facing == EnumFacing.NORTH) { - if (blockLeft.getSprite() != null) quads = createTrapezium(quads, left, blockLeft, widthN, widthW); - if (blockRight.getSprite() != null) quads = createTrapezium(quads, left, blockRight, 1-widthW, 1-widthN); - } else if (facing == EnumFacing.EAST) { - if (blockLeft.getSprite() != null) quads = createTrapezium(quads, left, blockLeft, widthN, widthW); - if (blockRight.getSprite() != null) quads = createTrapezium(quads, left, blockRight, 1-widthW, 1-widthN); - } else if (facing == EnumFacing.SOUTH) { - if (blockLeft.getSprite() != null) quads = createTrapezium(quads, left, blockLeft, widthN, widthW); - if (blockRight.getSprite() != null) quads = createTrapezium(quads, left, blockRight, 1-widthW, 1-widthN); - } else { - if (blockLeft.getSprite() != null) quads = createTrapezium(quads, left, blockLeft, widthN, widthW); - if (blockRight.getSprite() != null) quads = createTrapezium(quads, left, blockRight, 1-widthW, 1-widthN); - } - - return quads; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalQuadQuadModel.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalQuadQuadModel.java deleted file mode 100644 index a380529d..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalQuadQuadModel.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal; - -import java.util.function.Function; - -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; - -public class DiagonalQuadQuadModel extends DiagonalModelBase { - - double narrow; - double wide; - boolean left; - - public DiagonalQuadQuadModel(double narrow, double wide, boolean left) { - this.narrow = narrow; - this.wide = wide; - this.left = left; - } - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new DiagonalQuadQuadBakedModel(state, format, bakedTextureGetter, narrow, wide, left); - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleModel.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleModel.java deleted file mode 100644 index aca36105..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleModel.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal; - -import java.util.function.Function; - -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; - -public class DiagonalTriangleModel extends DiagonalModelBase { - - boolean left; - - public DiagonalTriangleModel(boolean left) { - this.left = left; - } - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new DiagonalTriangleTriangleBakedModel(state, format, bakedTextureGetter, 0.0, 1.0, left); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleQuadBakedModel.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleQuadBakedModel.java deleted file mode 100644 index e3ecb7b5..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleQuadBakedModel.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.blocks.diagonal.HalfBlock; - -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; - -public class DiagonalTriangleQuadBakedModel extends DiagonalBakedModelBase { - - double widthN = 0.5; - double widthW = 1.0; - boolean left; - - public DiagonalTriangleQuadBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter, double widthN, double widthW, boolean left) { - super(state, format, bakedTextureGetter); - this.widthN = widthN; - this.widthW = widthW; - this.left = left; - } - - @Override - protected List packQuads(EnumFacing facing, HalfBlock blockLeft, HalfBlock blockRight) { - List quads = new ArrayList<>(); - - if (facing == EnumFacing.NORTH) { - if (blockLeft.getSprite() != null) quads = createTriangle(quads, left, blockLeft, widthN); - if (blockRight.getSprite() != null) quads = createTrapezium(quads, left, blockRight, widthN, widthW); - } else if (facing == EnumFacing.EAST) { - if (blockLeft.getSprite() != null) quads = createTriangle(quads, left, blockLeft, widthN); - if (blockRight.getSprite() != null) quads = createTrapezium(quads, left, blockRight, widthN, widthW); - } else if (facing == EnumFacing.SOUTH) { - if (blockLeft.getSprite() != null) quads = createTriangle(quads, left, blockLeft, widthN); - if (blockRight.getSprite() != null) quads = createTrapezium(quads, left, blockRight, widthN, widthW); - } else { - if (blockLeft.getSprite() != null) quads = createTriangle(quads, left, blockLeft, widthN); - if (blockRight.getSprite() != null) quads = createTrapezium(quads, left, blockRight, widthN, widthW); - } - - return quads; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleQuadModel.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleQuadModel.java deleted file mode 100644 index bee177e4..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleQuadModel.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal; - -import java.util.function.Function; - -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; - -public class DiagonalTriangleQuadModel extends DiagonalModelBase { - - double narrow; - double wide; - boolean left; - - public DiagonalTriangleQuadModel(double narrow, double wide, boolean left) { - this.narrow = narrow; - this.wide = wide; - this.left = left; - } - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new DiagonalTriangleQuadBakedModel(state, format, bakedTextureGetter, narrow, wide, left); - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleTriangleBakedModel.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleTriangleBakedModel.java deleted file mode 100644 index 233476a5..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/DiagonalTriangleTriangleBakedModel.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.blocks.diagonal.HalfBlock; - -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; - -public class DiagonalTriangleTriangleBakedModel extends DiagonalBakedModelBase { - - double widthN = 0.5; - double widthW = 0.75; - boolean left; - - public DiagonalTriangleTriangleBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter, double widthN, double widthW, boolean left) { - super(state, format, bakedTextureGetter); - this.widthN = widthN; - this.widthW = widthW; - this.left = left; - } - - @Override - protected List packQuads(EnumFacing facing, HalfBlock blockLeft, HalfBlock blockRight) { - List quads = new ArrayList<>(); - - if (facing == EnumFacing.NORTH) { - if (blockLeft.getSprite() != null) quads = createTriangle(quads, left, blockLeft, widthN); - if (blockRight.getSprite() != null) quads = createTriangle(quads, left, blockRight, widthN); - } else if (facing == EnumFacing.EAST) { - if (blockLeft.getSprite() != null) quads = createTriangle(quads, left, blockLeft, widthN); - if (blockRight.getSprite() != null) quads = createTriangle(quads, left, blockRight, widthN); - } else if (facing == EnumFacing.SOUTH) { - if (blockLeft.getSprite() != null) quads = createTriangle(quads, left, blockLeft, widthN); - if (blockRight.getSprite() != null) quads = createTriangle(quads, left, blockRight, widthN); - } else { - if (blockLeft.getSprite() != null) quads = createTriangle(quads, left, blockLeft, widthN); - if (blockRight.getSprite() != null) quads = createTriangle(quads, left, blockRight, widthN); - } - - return quads; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal11MirrorModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal11MirrorModelLoader.java deleted file mode 100644 index 71a97b43..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal11MirrorModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalTriangleModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal11MirrorModelLoader implements ICustomModelLoader { - - public static final DiagonalTriangleModel MODEL = new DiagonalTriangleModel(false); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_11_mirror".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal11ModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal11ModelLoader.java deleted file mode 100644 index fd50f751..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal11ModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalTriangleModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal11ModelLoader implements ICustomModelLoader { - - public static final DiagonalTriangleModel MODEL = new DiagonalTriangleModel(true); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_11".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal12MirrorModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal12MirrorModelLoader.java deleted file mode 100644 index 310aa756..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal12MirrorModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalTriangleQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal12MirrorModelLoader implements ICustomModelLoader { - - public static final DiagonalTriangleQuadModel MODEL = new DiagonalTriangleQuadModel(0.5, 1.0, false); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_12_mirror".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal12ModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal12ModelLoader.java deleted file mode 100644 index 3785197a..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal12ModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalTriangleQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal12ModelLoader implements ICustomModelLoader { - - public static final DiagonalTriangleQuadModel MODEL = new DiagonalTriangleQuadModel(0.5, 1.0, true); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_12".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal14MirrorModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal14MirrorModelLoader.java deleted file mode 100644 index 1f77fab1..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal14MirrorModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalTriangleQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal14MirrorModelLoader implements ICustomModelLoader { - - public static final DiagonalTriangleQuadModel MODEL = new DiagonalTriangleQuadModel(0.75, 1.0, false); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_14_mirror".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal14ModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal14ModelLoader.java deleted file mode 100644 index 5c018985..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal14ModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalTriangleQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal14ModelLoader implements ICustomModelLoader { - - public static final DiagonalTriangleQuadModel MODEL = new DiagonalTriangleQuadModel(0.75, 1.0, true); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_14".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal18MirrorModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal18MirrorModelLoader.java deleted file mode 100644 index 3f39efa2..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal18MirrorModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalTriangleQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal18MirrorModelLoader implements ICustomModelLoader { - - public static final DiagonalTriangleQuadModel MODEL = new DiagonalTriangleQuadModel(0.875, 1.0, false); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_18_mirror".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal18ModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal18ModelLoader.java deleted file mode 100644 index 6faadd9f..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal18ModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalTriangleQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal18ModelLoader implements ICustomModelLoader { - - public static final DiagonalTriangleQuadModel MODEL = new DiagonalTriangleQuadModel(0.875, 1.0, true); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_18".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal24MirrorModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal24MirrorModelLoader.java deleted file mode 100644 index 3b58b167..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal24MirrorModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalQuadQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal24MirrorModelLoader implements ICustomModelLoader { - - public static final DiagonalQuadQuadModel MODEL = new DiagonalQuadQuadModel(0.25, 0.5, false); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_24_mirror".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal24ModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal24ModelLoader.java deleted file mode 100644 index 4760167f..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal24ModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalQuadQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal24ModelLoader implements ICustomModelLoader { - - public static final DiagonalQuadQuadModel MODEL = new DiagonalQuadQuadModel(0.25, 0.5, true); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_24".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal28MirrorModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal28MirrorModelLoader.java deleted file mode 100644 index bda9e0d8..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal28MirrorModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalQuadQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal28MirrorModelLoader implements ICustomModelLoader { - - public static final DiagonalQuadQuadModel MODEL = new DiagonalQuadQuadModel(0.125, 0.25, false); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_28_mirror".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal28ModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal28ModelLoader.java deleted file mode 100644 index 30b71e67..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal28ModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalQuadQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal28ModelLoader implements ICustomModelLoader { - - public static final DiagonalQuadQuadModel MODEL = new DiagonalQuadQuadModel(0.125, 0.25, true); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_28".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal38MirrorModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal38MirrorModelLoader.java deleted file mode 100644 index 3bec59c6..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal38MirrorModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalQuadQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal38MirrorModelLoader implements ICustomModelLoader { - - public static final DiagonalQuadQuadModel MODEL = new DiagonalQuadQuadModel(0.25, 0.375, false); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_38_mirror".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal38ModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal38ModelLoader.java deleted file mode 100644 index 029f7108..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal38ModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalQuadQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal38ModelLoader implements ICustomModelLoader { - - public static final DiagonalQuadQuadModel MODEL = new DiagonalQuadQuadModel(0.25, 0.375, true); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_38".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal48MirrorModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal48MirrorModelLoader.java deleted file mode 100644 index 1075c6e9..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal48MirrorModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalQuadQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal48MirrorModelLoader implements ICustomModelLoader { - - public static final DiagonalQuadQuadModel MODEL = new DiagonalQuadQuadModel(0.375, 0.5, false); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_48_mirror".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal48ModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal48ModelLoader.java deleted file mode 100644 index db222d90..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/diagonal/loaders/Diagonal48ModelLoader.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.silvaniastudios.roads.client.model.diagonal.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalQuadQuadModel; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class Diagonal48ModelLoader implements ICustomModelLoader { - - public static final DiagonalQuadQuadModel MODEL = new DiagonalQuadQuadModel(0.375, 0.5, true); - - @Override - public boolean accepts(ResourceLocation modelLocation) { - return modelLocation.getResourceDomain().equals(FurenikusRoads.MODID) && "diagonal_48".equals(modelLocation.getResourcePath()); - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return MODEL; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/PaintBakedModelBase.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/PaintBakedModelBase.java deleted file mode 100644 index d12b46a3..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/PaintBakedModelBase.java +++ /dev/null @@ -1,206 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.diagonal.ShapeLibrary; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.customs.CustomPaintBlock; -import com.silvaniastudios.roads.blocks.paint.customs.ICustomBlock; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.block.model.ItemOverrideList; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.math.Vec3d; -import net.minecraft.world.World; -import net.minecraftforge.client.model.pipeline.UnpackedBakedQuad; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; -import net.minecraftforge.fml.common.Loader; - -public abstract class PaintBakedModelBase implements IBakedModel { - - private final String foamFixModId = "foamfix"; - private final PaintOverrideList overrideList; - - protected TextureAtlasSprite[] sprites; - protected ItemStack stack; - protected VertexFormat format; - protected Minecraft mc; - private List itemQuadsCache = null; - - public PaintBakedModelBase(IModelState state, VertexFormat format, Function bakedTextureGetter) { - this.format = format; - - mc = Minecraft.getMinecraft(); - stack = null; - - overrideList = new PaintOverrideList(this); - } - - protected void populateSprites() { - sprites = new TextureAtlasSprite[FRBlocks.col.size()]; - - for (int i = 0; i < FRBlocks.col.size(); i++) { - sprites[i] = mc.getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + FRBlocks.col.get(i).getName()); - } - } - - @Override - public List getQuads(IBlockState state, EnumFacing side, long rand) { - if (side != null) { - return Collections.emptyList(); - } - - return packQuads(state); - } - - //Overriden in subclasses - protected List packQuads(IBlockState state) { - List quads = new ArrayList<>(); - return quads; - } - - @Override public ItemOverrideList getOverrides() { - return this.overrideList; - } - @Override public boolean isAmbientOcclusion() { return true; } - @Override public boolean isGui3d() { return false; } - @Override public boolean isBuiltInRenderer() { return false; } - @Override public TextureAtlasSprite getParticleTexture() { return Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/road_block_standard"); } - @Override public ItemCameraTransforms getItemCameraTransforms() { return ItemCameraTransforms.DEFAULT; } - - public List handleItemRendering() { - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - CustomPaintBlock paintBlock = (CustomPaintBlock) ((ItemBlock) stack.getItem()).getBlock(); - if (paintBlock.isInternal()) { - List spriteQuads = getSpriteQuads(); - - rawQuads.addAll(spriteQuads); - quads = shapeBuilderItem(rawQuads, quads, paintBlock.getColour().getColourInt(), 0, 0); - return quads; - } else { - if (itemQuadsCache == null) { - int colId = paintBlock.getColour().getId(); - boolean[][]grid = ((ICustomBlock) paintBlock).getGrid(stack.getItemDamage() < 7 ? 0 : 1).getGrid(); - - rawQuads = ShapeLibrary.shapeFromGrid(grid, 0.5f, sprites[colId], format, !Loader.isModLoaded(foamFixModId)); - - itemQuadsCache = shapeBuilderItem(rawQuads, quads, paintBlock.getColour().getColourInt(), 90, stack.isOnItemFrame() ? 180 : 0); - } - return itemQuadsCache; - } - } - - protected List shapeBuilderItem(List rawQuads, List quads, int col, int xRot, int yRot) { - for (int i = 0; i < rawQuads.size(); i++) { - if (rawQuads.get(i) != null) { - rawQuads.set(i, Quad.rotateQuadX(rawQuads.get(i), xRot).rotateQuadY(rawQuads.get(i), yRot)); - BakedQuad baked = rawQuads.get(i).createQuad(col); - - quads.add(baked); - } - } - - return quads; - } - - public List getSpriteQuads() { - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":paints/" + paintBlock.getIconName() + "_" + stack.getItemDamage()); - - return getSpriteQuads(sprite); - } - - public List getSpriteQuads(TextureAtlasSprite sprite) { - List quads = new ArrayList<>(); - - Quad front = new Quad( - new Vec3d(0, 1, 0.5), 16f, 0f, //BL - new Vec3d(1, 1, 0.5), 0f, 0f,//BR - new Vec3d(1, 0, 0.5), 0f, 16f, //TR - new Vec3d(0, 0, 0.5), 16f, 16f, //TL - sprite, format); - - Quad back = new Quad( - new Vec3d(1, 1, 0.5), 16f, 0f, //BL - new Vec3d(0, 1, 0.5), 0f, 0f,//BR - new Vec3d(0, 0, 0.5), 0f, 16f, //TR - new Vec3d(1, 0, 0.5), 16f, 16f, //TL - sprite, format); - - if (!Loader.isModLoaded(foamFixModId)) { - quads.add(front); - } - quads.add(back); - - return quads; - } - - public PaintBakedModelBase setCurrentItemStack(ItemStack stack) { - this.stack = stack; - return this; - } - - protected List shapeBuilder(List rawQuads, List quads, int rotX, int rotY) { - for (int i = 0; i < rawQuads.size(); i++) { - if (rawQuads.get(i) != null) { - rawQuads.set(i, Quad.rotateQuadX(rawQuads.get(i), rotX).rotateQuadY(rawQuads.get(i), rotY)); - } - } - - if (!rawQuads.isEmpty()) { - if (rawQuads.get(0) != null) { - rawQuads.get(0).updateUVs(); //Prevent UV rotation on top face - } - - if (rawQuads.get(1) != null) { - rawQuads.get(1).setFlipV(true); //Flip UVs for bottom face - rawQuads.get(1).updateUVs(); //Prevent UV rotation on bottom face - } - } - - - for (int i = 0; i < rawQuads.size(); i++) { - if (rawQuads.get(i) != null) { - BakedQuad baked = rawQuads.get(i).createQuad(0); - - quads.add(baked); - } - } - - return quads; - } - - private static class PaintOverrideList extends ItemOverrideList { - private PaintBakedModelBase model; - - public PaintOverrideList(PaintBakedModelBase model) { - super(Collections.emptyList()); - this.model = model; - } - - @Override - public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) { - return this.model.setCurrentItemStack(stack); - } - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/PaintLineBakedModelBase.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/PaintLineBakedModelBase.java deleted file mode 100644 index 3d502911..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/PaintLineBakedModelBase.java +++ /dev/null @@ -1,130 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint; - -import com.silvaniastudios.roads.client.render.Quad; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.math.Vec3d; -import net.minecraftforge.common.model.IModelState; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -public class PaintLineBakedModelBase extends PaintBakedModelBase { - - public PaintLineBakedModelBase(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - - } - - protected List shapeBuilder(List rawQuads, List quads, int col) { - return shapeBuilder(rawQuads, quads, col, 0); - } - - protected List shapeBuilder(List rawQuads, List quads, int col, int rotation) { - if (rotation != 0) { - for (int i = 0; i < rawQuads.size(); i++) { - if (rawQuads.get(i) != null) { - rawQuads.set(i, Quad.rotateQuadY(rawQuads.get(i), rotation)); - } - } - } - - for (int i = 0; i < rawQuads.size(); i++) { - if (rawQuads.get(i) != null) { - BakedQuad baked = rawQuads.get(i).createQuad(col); - - quads.add(baked); - } - } - - return quads; - } - - public static List shapeLine(VertexFormat format, TextureAtlasSprite sprite, float x1, float z1, float x2, float z2, float hSW, float hSE, float hNE, float hNW) { - List quads = new ArrayList<>(); - - float xMin = Math.min(x1, x2); - float xMax = Math.max(x1, x2); - float zMin = Math.min(z1, z2); - float zMax = Math.max(z1, z2); - - float deltaHeightNWS = Math.abs(hNW - hSW); //north-south along west side // 1.0 - 0.75 = 0.25 - float deltaHeightNES = Math.abs(hNE - hSE); //north-south along east side // 0.5 - 0.25 = 0.25 - float deltaHeightENW = Math.abs(hNW - hNE); //east-west along north side // 1.0 - 0.5 = 0.5 - float deltaHeightESW = Math.abs(hSW - hSE); //east-west along south side // 0.75 - 0.25 = 0.5 - - float heightSW = 0; - float heightSE = 0; - float heightNW = 0; - float heightNE = 0; - - if (x1 > x2) { - heightSW = Math.max(hSW, hSE) - (x1 * deltaHeightESW) + ((1-zMax) * deltaHeightNWS); - heightSE = Math.max(hSW, hSE) - (x2 * deltaHeightESW) + ((1-zMax) * deltaHeightNES); - heightNW = Math.max(hNW, hNE) - (x1 * deltaHeightENW) - (zMin * deltaHeightNWS); - heightNE = Math.max(hNW, hNE) - (x2 * deltaHeightENW) - (zMin * deltaHeightNES); - } else { - heightSW = Math.max(hSW, hSE) - (x2 * deltaHeightESW) + ((1-zMax) * deltaHeightNWS); - heightSE = Math.max(hSW, hSE) - (x1 * deltaHeightESW) + ((1-zMax) * deltaHeightNES); - heightNW = Math.max(hNW, hNE) - (x2 * deltaHeightENW) - (zMin * deltaHeightNWS); - heightNE = Math.max(hNW, hNE) - (x1 * deltaHeightENW) - (zMin * deltaHeightNES); - } - - Quad north = new Quad( - new Vec3d(xMax, heightNE, zMin), xMin*16f, 16f, //BR - new Vec3d(xMin, heightNW, zMin), xMax*16f, 16f, //TR - new Vec3d(xMin, heightNW+0.015625, zMin), xMax*16f, 15.75f,//TL - new Vec3d(xMax, heightNE+0.015625, zMin), xMin*16f, 15.75f,//BL - sprite, format); - - Quad east = new Quad( - new Vec3d(xMax, heightSE, zMax), zMin*16f, 16f, //BR - new Vec3d(xMax, heightNE, zMin), zMax*16f, 16f, //TR - new Vec3d(xMax, heightNE+0.015625, zMin), zMax*16f, 15.75f,//TL - new Vec3d(xMax, heightSE+0.015625, zMax), zMin*16f, 15.75f,//BL - sprite, format); - - Quad south = new Quad( - new Vec3d(xMin, heightSW, zMax), xMax*16f, 15.75f, //BL - new Vec3d(xMax, heightSE, zMax), xMin*16f, 15.75f,//BR - new Vec3d(xMax, heightSE+0.015625, zMax), xMin*16f, 16f, //TR - new Vec3d(xMin, heightSW+0.015625, zMax), xMax*16f, 16f, //TL - sprite, format); - - Quad west = new Quad( - new Vec3d(xMin, heightNW, zMin), zMax*16f, 15.75f, //BL - new Vec3d(xMin, heightSW, zMax), zMin*16f, 15.75f,//BR - new Vec3d(xMin, heightSW+0.015625, zMax), zMin*16f, 16f, //TR - new Vec3d(xMin, heightNW+0.015625, zMin), zMax*16f, 16f, //TL - sprite, format); - - Quad top = new Quad( //Top - new Vec3d(x1, heightSW+0.015625, z2), //BL - new Vec3d(x2, heightSE+0.015625, z2), //BR - new Vec3d(x2, heightNE+0.015625, z1), //TR - new Vec3d(x1, heightNW+0.015625, z1), //TL - sprite, format); - - /*TextureAtlasSprite sprite2 = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/road_block_standard"); - - Quad base = new Quad( //Top - new Vec3d(0, hSW, 1), //BL - new Vec3d(1, hSE, 1), //BR - new Vec3d(1, hNE, 0), //TR - new Vec3d(0, hNW, 0), //TL - sprite2, format); - - quads.add(base);*/ - quads.add(top); - quads.add(north); - quads.add(east); - quads.add(south); - quads.add(west); - return quads; - } - - -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/PaintModelBase.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/PaintModelBase.java deleted file mode 100644 index 281b3716..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/PaintModelBase.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint; - -import java.util.Collection; -import java.util.Collections; -import java.util.List; -import java.util.function.Function; - -import com.google.common.collect.ImmutableSet; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.diagonal.ShapeLibrary; -import com.silvaniastudios.roads.blocks.paint.customs.CustomPaintBlock; -import com.silvaniastudios.roads.blocks.paint.customs.ICustomBlock; -import com.silvaniastudios.roads.client.model.diagonal.DiagonalTriangleTriangleBakedModel; - -import com.silvaniastudios.roads.client.render.Quad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.model.TRSRTransformation; - -public abstract class PaintModelBase implements IModel { - - @Override - public abstract IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter); - - @Override - public Collection getDependencies() { - return Collections.emptySet(); - } - - @Override - public Collection getTextures() { - return ImmutableSet.of(new ResourceLocation(FurenikusRoads.MODID, "blocks/road_block_standard")); - } - - @Override - public IModelState getDefaultState() { - return TRSRTransformation.identity(); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/CustomPaintModelLoader.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/CustomPaintModelLoader.java deleted file mode 100644 index 28e75634..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/CustomPaintModelLoader.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; - -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class CustomPaintModelLoader implements ICustomModelLoader { - - PaintModelBase model; - String name; - - public CustomPaintModelLoader(String name, PaintModelBase model) { - this.name = name; - this.model = model; - } - - @Override - public boolean accepts(ResourceLocation modelLocation) { - if (modelLocation.getResourceDomain().equals(FurenikusRoads.MODID)) { - return modelLocation.getResourcePath().equals(name); - } - return false; - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return model; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} - -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/PaintLoaderBase.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/PaintLoaderBase.java deleted file mode 100644 index 0de1107b..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/PaintLoaderBase.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; - -public class PaintLoaderBase implements ICustomModelLoader { - - IModel model; - String texturePre; - String texturePost; - - public PaintLoaderBase(IModel model, String texturePre, String texturePost) { - this.model = model; - this.texturePre = texturePre; - this.texturePost = texturePost; - } - - @Override - public boolean accepts(ResourceLocation modelLocation) { - if (modelLocation.getResourceDomain().equals(FurenikusRoads.MODID)) { - for (int i = 0; i < FRBlocks.col.size(); i++) { - if (modelLocation.getResourcePath().equals(texturePre + FRBlocks.col.get(i).getName() + texturePost)) { - return true; - } - } - } - return false; - } - - @Override - public IModel loadModel(ResourceLocation modelLocation) throws Exception { - return model; - } - - @Override - public void onResourceManagerReload(IResourceManager resourceManager) {} -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomMetaPaintModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomMetaPaintModel.java deleted file mode 100644 index e34beb33..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomMetaPaintModel.java +++ /dev/null @@ -1,98 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.customs; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.diagonal.ShapeLibrary; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; -import com.silvaniastudios.roads.blocks.paint.customs.CustomMetaPaintBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.render.Quad; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -public class CustomMetaPaintModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new CustomMetaPaintBakedModel(state, format, bakedTextureGetter); - } -} - -class CustomMetaPaintBakedModel extends PaintBakedModelBase { - - public CustomMetaPaintBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - populateSprites(); - } - - @Override - protected List packQuads(IBlockState state) { - List quads; - List rawQuads; - - if (state != null) { - CustomMetaPaintBlock block = (CustomMetaPaintBlock) state.getBlock(); - int colId = block.getColour().getId(); - EnumMeta meta = state.getValue(CustomMetaPaintBlock.META_ID); - TextureAtlasSprite tex = sprites[colId]; - - if (getGrid(meta.getMetadata(), block) == null) { - FurenikusRoads.debug(0, "Failed to load paint grid for " + block.getLocalName() + " and meta " + meta.getMetadata()); - rawQuads = ShapeLibrary.shapeFromGrid(PaintGrid.EMPTY.getGrid(), 0.015625f, tex, format, false); - quads = shapeBuilder(rawQuads, new ArrayList<>(), 0, 0); - return quads; - } - - boolean[][] grid = getGrid(meta.getMetadata(), block).getGrid(); - - int xRot = 0; - int yRot = meta.getRotation(); - - rawQuads = ShapeLibrary.shapeFromGrid(grid, 0.015625f, tex, format, false); - quads = shapeBuilder(rawQuads, new ArrayList<>(), xRot, yRot); - } else { - return handleItemRendering(); - } - - return quads; - } - - private PaintGrid getGrid(int meta, CustomMetaPaintBlock block) { - int gridId = 0; - int[] metas = new int[] {0, 4, 8, 12}; - - for (int i = 0; i < metas.length; i++) { - if (meta >= metas[i]) { - gridId = i; - } - } - - return block.getGrid(gridId); - } - - protected List shapeBuilderItem(List rawQuads, List quads, int col, int yRot) { - for (int i = 0; i < rawQuads.size(); i++) { - if (rawQuads.get(i) != null) { - rawQuads.set(i, Quad.rotateQuadX(rawQuads.get(i), 90).rotateQuadY(rawQuads.get(i), yRot)); - BakedQuad baked = rawQuads.get(i).createQuad(col); - - quads.add(baked); - } - } - - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaint2x1Model.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaint2x1Model.java deleted file mode 100644 index 3ebea5fc..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaint2x1Model.java +++ /dev/null @@ -1,97 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.customs; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.diagonal.ShapeLibrary; -import com.silvaniastudios.roads.blocks.enums.EnumTwoLengthConnectable; -import com.silvaniastudios.roads.blocks.paint.customs.Custom1x2PaintBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.customs.Custom1x4PaintBlock; -import com.silvaniastudios.roads.blocks.paint.customs.ICustomBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.render.Quad; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -public class CustomPaint2x1Model extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new CustomPaint2x1BakedModel(state, format, bakedTextureGetter); - } -} - -class CustomPaint2x1BakedModel extends PaintBakedModelBase { - - public CustomPaint2x1BakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - populateSprites(); - } - - @Override - protected List packQuads(IBlockState state) { - List quads; - List rawQuads; - - if (state != null) { - int colId = ((PaintBlockBase) state.getBlock()).getColour().getId(); - - TextureAtlasSprite tex = sprites[colId]; - EnumTwoLengthConnectable rotState = state.getValue(Custom1x2PaintBlock.CONNECT); - - int xRot = 0; - int yRot = 45; - int gridId = 0; - - switch (rotState) { - case n1: - yRot = 0; - break; - case e1: - yRot = 270; - break; - case s1: - yRot = 180; - break; - case w1: - yRot = 90; - break; - case n2: - yRot = 0; - gridId = 1; - break; - case e2: - yRot = 270; - gridId = 1; - break; - case s2: - yRot = 180; - gridId = 1; - break; - case w2: - yRot = 90; - gridId = 1; - break; - } - - boolean[][] grid = ((ICustomBlock) state.getBlock()).getGrid(gridId).getGrid(); - - rawQuads = ShapeLibrary.shapeFromGrid(grid, 0.015625f, tex, format, false); - quads = shapeBuilder(rawQuads, new ArrayList<>(), xRot, yRot); - } else { - return handleItemRendering(); - } - - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaint3x1Model.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaint3x1Model.java deleted file mode 100644 index 6cee39bc..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaint3x1Model.java +++ /dev/null @@ -1,121 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.customs; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.diagonal.ShapeLibrary; -import com.silvaniastudios.roads.blocks.enums.EnumFourLengthConnectable; -import com.silvaniastudios.roads.blocks.enums.EnumThreeLengthConnectable; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.customs.Custom1x3PaintBlock; -import com.silvaniastudios.roads.blocks.paint.customs.Custom1x4PaintBlock; -import com.silvaniastudios.roads.blocks.paint.customs.ICustomBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.render.Quad; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -public class CustomPaint3x1Model extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new CustomPaint3x1BakedModel(state, format, bakedTextureGetter); - } -} - -class CustomPaint3x1BakedModel extends PaintBakedModelBase { - - public CustomPaint3x1BakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - populateSprites(); - } - - @Override - protected List packQuads(IBlockState state) { - List quads; - List rawQuads; - - if (state != null) { - int colId = ((PaintBlockBase) state.getBlock()).getColour().getId(); - - TextureAtlasSprite tex = sprites[colId]; - EnumThreeLengthConnectable rotState = state.getValue(Custom1x3PaintBlock.CONNECT); - - int xRot = 0; - int yRot = 45; - int gridId = 0; - - switch (rotState) { - case NORTH_TOP: - yRot = 0; - gridId = 2; - break; - case NORTH_MID: - yRot = 0; - gridId = 1; - break; - case NORTH_BOTTOM: - yRot = 0; - gridId = 0; - break; - - case EAST_TOP: - yRot = 270; - gridId = 2; - break; - case EAST_MID: - yRot = 270; - gridId = 1; - break; - case EAST_BOTTOM: - yRot = 270; - gridId = 0; - break; - - case SOUTH_TOP: - yRot = 180; - gridId = 2; - break; - case SOUTH_MID: - yRot = 180; - gridId = 1; - break; - case SOUTH_BOTTOM: - yRot = 180; - gridId = 0; - break; - - case WEST_TOP: - yRot = 90; - gridId = 2; - break; - case WEST_MID: - yRot = 90; - gridId = 1; - break; - case WEST_BOTTOM: - yRot = 90; - gridId = 0; - break; - } - - boolean[][] grid = ((ICustomBlock) state.getBlock()).getGrid(gridId).getGrid(); - - rawQuads = ShapeLibrary.shapeFromGrid(grid, 0.015625f, tex, format, false); - quads = shapeBuilder(rawQuads, new ArrayList<>(), xRot, yRot); - } else { - return handleItemRendering(); - } - - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaint4x1Model.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaint4x1Model.java deleted file mode 100644 index da6ee6c0..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaint4x1Model.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.customs; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.diagonal.ShapeLibrary; -import com.silvaniastudios.roads.blocks.enums.EnumFourLengthConnectable; -import com.silvaniastudios.roads.blocks.enums.EnumTwoLengthConnectable; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.customs.Custom1x2PaintBlock; -import com.silvaniastudios.roads.blocks.paint.customs.Custom1x4PaintBlock; -import com.silvaniastudios.roads.blocks.paint.customs.ICustomBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.render.Quad; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -public class CustomPaint4x1Model extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new CustomPaint4x1BakedModel(state, format, bakedTextureGetter); - } -} - -class CustomPaint4x1BakedModel extends PaintBakedModelBase { - - public CustomPaint4x1BakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - populateSprites(); - } - - @Override - protected List packQuads(IBlockState state) { - List quads; - List rawQuads; - - if (state != null) { - int colId = ((PaintBlockBase) state.getBlock()).getColour().getId(); - - TextureAtlasSprite tex = sprites[colId]; - EnumFourLengthConnectable rotState = state.getValue(Custom1x4PaintBlock.CONNECT); - - int xRot = 0; - int yRot = 45; - int gridId = 0; - - switch (rotState) { - case NORTH_TOP: - yRot = 0; - gridId = 3; - break; - case NORTH_TOP_MID: - yRot = 0; - gridId = 2; - break; - case NORTH_BOTTOM_MID: - yRot = 0; - gridId = 1; - break; - case NORTH_BOTTOM: - yRot = 0; - gridId = 0; - break; - - case EAST_TOP: - yRot = 270; - gridId = 3; - break; - case EAST_TOP_MID: - yRot = 270; - gridId = 2; - break; - case EAST_BOTTOM_MID: - yRot = 270; - gridId = 1; - break; - case EAST_BOTTOM: - yRot = 270; - gridId = 0; - break; - - case SOUTH_TOP: - yRot = 180; - gridId = 3; - break; - case SOUTH_TOP_MID: - yRot = 180; - gridId = 2; - break; - case SOUTH_BOTTOM_MID: - yRot = 180; - gridId = 1; - break; - case SOUTH_BOTTOM: - yRot = 180; - gridId = 0; - break; - - case WEST_TOP: - yRot = 90; - gridId = 3; - break; - case WEST_TOP_MID: - yRot = 90; - gridId = 2; - break; - case WEST_BOTTOM_MID: - yRot = 90; - gridId = 1; - break; - case WEST_BOTTOM: - yRot = 90; - gridId = 0; - break; - } - - boolean[][] grid = ((ICustomBlock) state.getBlock()).getGrid(gridId).getGrid(); - - rawQuads = ShapeLibrary.shapeFromGrid(grid, 0.015625f, tex, format, false); - quads = shapeBuilder(rawQuads, new ArrayList<>(), xRot, yRot); - } else { - return handleItemRendering(); - } - - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaintModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaintModel.java deleted file mode 100644 index e4a5243e..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomPaintModel.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.customs; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.diagonal.ShapeLibrary; -import com.silvaniastudios.roads.blocks.paint.customs.CustomPaintBlock; -import com.silvaniastudios.roads.blocks.paint.customs.ICustomBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.render.Quad; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; - -public class CustomPaintModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new CustomPaintBakedModel(state, format, bakedTextureGetter); - } -} - -class CustomPaintBakedModel extends PaintBakedModelBase { - - public CustomPaintBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - populateSprites(); - } - - @Override - protected List packQuads(IBlockState state) { - List quads; - List rawQuads; - - if (state != null) { - int colId = ((PaintBlockBase) state.getBlock()).getColour().getId(); - boolean[][] grid = ((ICustomBlock) state.getBlock()).getGrid(0).getGrid(); - - TextureAtlasSprite tex = sprites[colId]; - EnumFacing rotState = state.getValue(CustomPaintBlock.FACING); - - int xRot = 0; - int yRot = 45; - - switch (rotState) { - case NORTH: - yRot = 0; - break; - case EAST: - yRot = 270; - break; - case SOUTH: - yRot = 180; - break; - case WEST: - yRot = 90; - break; - } - - rawQuads = ShapeLibrary.shapeFromGrid(grid, 0.015625f, tex, format, false); - quads = shapeBuilder(rawQuads, new ArrayList<>(), xRot, yRot); - } else { - return handleItemRendering(); - } - - return quads; - } - - -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomWallPaintModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomWallPaintModel.java deleted file mode 100644 index 13c2de5a..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/customs/CustomWallPaintModel.java +++ /dev/null @@ -1,136 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.customs; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.diagonal.ShapeLibrary; -import com.silvaniastudios.roads.blocks.enums.EnumRotatable; -import com.silvaniastudios.roads.blocks.paint.customs.CustomPaintWallBlock; -import com.silvaniastudios.roads.blocks.paint.customs.ICustomBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.render.Quad; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -public class CustomWallPaintModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new CustomWallBakedModel(state, format, bakedTextureGetter); - } -} - -class CustomWallBakedModel extends PaintBakedModelBase { - - public CustomWallBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - populateSprites(); - } - - @Override - protected List packQuads(IBlockState state) { - List quads; - List rawQuads; - - if (state != null) { - int colId = ((PaintBlockBase) state.getBlock()).getColour().getId(); - boolean[][] grid; - - TextureAtlasSprite tex = sprites[colId]; - EnumRotatable rotState = state.getValue(CustomPaintWallBlock.ROTATE_ID); - int meta = state.getBlock().getMetaFromState(state); - - if (meta <= 7) { - grid = ((ICustomBlock) state.getBlock()).getGrid(0).getGrid(); - } else { - grid = ((ICustomBlock) state.getBlock()).getGrid(1).getGrid(); - } - - int xRot = 0; - int yRot = 45; - - switch(rotState) { - case FLAT_NORTH: - case FLAT_NORTH_2: - yRot = 0; - break; - case FLAT_EAST: - case FLAT_EAST_2: - yRot = 270; - break; - case FLAT_SOUTH: - case FLAT_SOUTH_2: - yRot = 180; - break; - case FLAT_WEST: - case FLAT_WEST_2: - yRot = 90; - break; - case FACE_NORTH: - case FACE_NORTH_2: - xRot = 90; - yRot = 0; - break; - case FACE_EAST: - case FACE_EAST_2: - xRot = 90; - yRot = 270; - break; - case FACE_SOUTH: - case FACE_SOUTH_2: - xRot = 90; - yRot = 180; - break; - case FACE_WEST: - case FACE_WEST_2: - xRot = 90; - yRot = 90; - break; - } - - rawQuads = ShapeLibrary.shapeFromGrid(grid, 0.015625f, tex, format, false); - quads = shapeBuilder(rawQuads, new ArrayList<>(), xRot, yRot); - } else { - return handleItemRendering(); - } - - return quads; - } - - protected List shapeBuilder(List rawQuads, List quads, int rotX, int rotY) { - for (int i = 0; i < rawQuads.size(); i++) { - if (rawQuads.get(i) != null) { - rawQuads.set(i, Quad.rotateQuadX(rawQuads.get(i), rotX).rotateQuadY(rawQuads.get(i), rotY)); - } - } - - if (rawQuads.get(0) != null) { - rawQuads.get(0).updateUVs(); //Prevent UV rotation on top face - } - - if (rawQuads.get(1) != null) { - rawQuads.get(1).setFlipV(true); //Flip UVs for bottom face - rawQuads.get(1).updateUVs(); //Prevent UV rotation on bottom face - } - - for (int i = 0; i < rawQuads.size(); i++) { - if (rawQuads.get(i) != null) { - BakedQuad baked = rawQuads.get(i).createQuad(0); - - quads.add(baked); - } - } - - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineDoubleModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineDoubleModel.java deleted file mode 100644 index c27d933f..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineDoubleModel.java +++ /dev/null @@ -1,130 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.LinePaintBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.model.paint.loaders.PaintLoaderBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineDoubleModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineDoubleBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineDoubleBakedModel extends PaintLineBakedModelBase { - - public PaintLineDoubleBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState stateIn) { - IExtendedBlockState state = (IExtendedBlockState) stateIn; - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - LinePaintBlock.EnumRotation facing = state.getValue(LinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - rawQuads.addAll(shapeLine(format, sprite, v*5, v*5, v*7, v*7, 0f, 0f, 0f, 0f)); //northwest - rawQuads.addAll(shapeLine(format, sprite, v*9, v*5, v*11, v*7, 0f, 0f, 0f, 0f)); //northeast - rawQuads.addAll(shapeLine(format, sprite, v*5, v*9, v*7, v*11, 0f, 0f, 0f, 0f)); //southwest - rawQuads.addAll(shapeLine(format, sprite, v*9, v*9, v*11, v*11, 0f, 0f, 0f, 0f)); //southeast - - List northL = shapeLine(format, sprite, v*5, v*0, v*7, v*5, 0f, 0f, 0f, 0f); - List northR = shapeLine(format, sprite, v*9, v*0, v*11, v*5, 0f, 0f, 0f, 0f); - List northWidget = shapeLine(format, sprite, v*7, v*5, v*9, v*7, 0f, 0f, 0f, 0f); - - List eastL = shapeLine(format, sprite, v*11, v*5, v*16, v*7, 0f, 0f, 0f, 0f); - List eastR = shapeLine(format, sprite, v*11, v*9, v*16, v*11, 0f, 0f, 0f, 0f); - List eastWidget = shapeLine(format, sprite, v*9, v*7, v*11, v*9, 0f, 0f, 0f, 0f); - - List southL = shapeLine(format, sprite, v*5, v*9, v*7, v*16, 0f, 0f, 0f, 0f); - List southR = shapeLine(format, sprite, v*9, v*9, v*11, v*16, 0f, 0f, 0f, 0f); - List southWidget = shapeLine(format, sprite, v*7, v*9, v*9, v*11, 0f, 0f, 0f, 0f); - - List westL = shapeLine(format, sprite, v*0, v*5, v*5, v*7, 0f, 0f, 0f, 0f); - List westR = shapeLine(format, sprite, v*0, v*9, v*5, v*11, 0f, 0f, 0f, 0f); - List westWidget = shapeLine(format, sprite, v*5, v*7, v*7, v*9, 0f, 0f, 0f, 0f); - - if (facing == LinePaintBlock.EnumRotation.ns) { - rawQuads.addAll(northL); - rawQuads.addAll(northR); - rawQuads.addAll(eastWidget); - rawQuads.addAll(westWidget); - rawQuads.addAll(southL); - rawQuads.addAll(southR); - } else if (facing == LinePaintBlock.EnumRotation.ew) { - rawQuads.addAll(eastL); - rawQuads.addAll(eastR); - rawQuads.addAll(northWidget); - rawQuads.addAll(southWidget); - rawQuads.addAll(westL); - rawQuads.addAll(westR); - } else if (facing == LinePaintBlock.EnumRotation.connect) { - if (state.getValue(LinePaintBlock.NORTH)) { - rawQuads.addAll(northL); - rawQuads.addAll(northR); - } else { - rawQuads.addAll(northWidget); - } - if (state.getValue(LinePaintBlock.EAST)) { - rawQuads.addAll(eastL); - rawQuads.addAll(eastR); - } else { - rawQuads.addAll(eastWidget); - } - if (state.getValue(LinePaintBlock.SOUTH)) { - rawQuads.addAll(southL); - rawQuads.addAll(southR); - } else { - rawQuads.addAll(southWidget); - } - if (state.getValue(LinePaintBlock.WEST)) { - rawQuads.addAll(westL); - rawQuads.addAll(westR); - } else { - rawQuads.addAll(westWidget); - } - } - - quads = shapeBuilder(rawQuads, quads, 0); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineDoubleThickModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineDoubleThickModel.java deleted file mode 100644 index 5601fe74..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineDoubleThickModel.java +++ /dev/null @@ -1,130 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.LinePaintBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.model.paint.loaders.PaintLoaderBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineDoubleThickModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineDoubleThickBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineDoubleThickBakedModel extends PaintLineBakedModelBase { - - public PaintLineDoubleThickBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState stateIn) { - IExtendedBlockState state = (IExtendedBlockState) stateIn; - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - LinePaintBlock.EnumRotation facing = state.getValue(LinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - - float v = 1.0f / 16.0f; - if (sprite != null) { - rawQuads.addAll(shapeLine(format, sprite, v*3, v*3, v*7, v*7, 0f, 0f, 0f, 0f)); //northwest - rawQuads.addAll(shapeLine(format, sprite, v*9, v*3, v*13, v*7, 0f, 0f, 0f, 0f)); //northeast - rawQuads.addAll(shapeLine(format, sprite, v*3, v*9, v*7, v*13, 0f, 0f, 0f, 0f)); //southwest - rawQuads.addAll(shapeLine(format, sprite, v*9, v*9, v*13, v*13, 0f, 0f, 0f, 0f)); //southeast - - List northL = shapeLine(format, sprite, v*3, v*0, v*7, v*3, 0f, 0f, 0f, 0f); - List northR = shapeLine(format, sprite, v*9, v*0, v*13, v*3, 0f, 0f, 0f, 0f); - List northWidget = shapeLine(format, sprite, v*7, v*3, v*9, v*7, 0f, 0f, 0f, 0f); - - List eastL = shapeLine(format, sprite, v*13, v*3, v*16, v*7, 0f, 0f, 0f, 0f); - List eastR = shapeLine(format, sprite, v*13, v*9, v*16, v*13, 0f, 0f, 0f, 0f); - List eastWidget = shapeLine(format, sprite, v*9, v*7, v*13, v*9, 0f, 0f, 0f, 0f); - - List southL = shapeLine(format, sprite, v*3, v*9, v*7, v*16, 0f, 0f, 0f, 0f); - List southR = shapeLine(format, sprite, v*9, v*9, v*13, v*16, 0f, 0f, 0f, 0f); - List southWidget = shapeLine(format, sprite, v*7, v*9, v*9, v*13, 0f, 0f, 0f, 0f); - - List westL = shapeLine(format, sprite, v*0, v*3, v*3, v*7, 0f, 0f, 0f, 0f); - List westR = shapeLine(format, sprite, v*0, v*9, v*3, v*13, 0f, 0f, 0f, 0f); - List westWidget = shapeLine(format, sprite, v*3, v*7, v*7, v*9, 0f, 0f, 0f, 0f); - - if (facing == LinePaintBlock.EnumRotation.ns) { - rawQuads.addAll(northL); - rawQuads.addAll(northR); - rawQuads.addAll(eastWidget); - rawQuads.addAll(westWidget); - rawQuads.addAll(southL); - rawQuads.addAll(southR); - } else if (facing == LinePaintBlock.EnumRotation.ew) { - rawQuads.addAll(eastL); - rawQuads.addAll(eastR); - rawQuads.addAll(northWidget); - rawQuads.addAll(southWidget); - rawQuads.addAll(westL); - rawQuads.addAll(westR); - } else if (facing == LinePaintBlock.EnumRotation.connect) { - if (state.getValue(LinePaintBlock.NORTH)) { - rawQuads.addAll(northL); - rawQuads.addAll(northR); - } else { - rawQuads.addAll(northWidget); - } - if (state.getValue(LinePaintBlock.EAST)) { - rawQuads.addAll(eastL); - rawQuads.addAll(eastR); - } else { - rawQuads.addAll(eastWidget); - } - if (state.getValue(LinePaintBlock.SOUTH)) { - rawQuads.addAll(southL); - rawQuads.addAll(southR); - } else { - rawQuads.addAll(southWidget); - } - if (state.getValue(LinePaintBlock.WEST)) { - rawQuads.addAll(westL); - rawQuads.addAll(westR); - } else { - rawQuads.addAll(westWidget); - } - } - - quads = shapeBuilder(rawQuads, quads, 0); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - return quads; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineFarSideModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineFarSideModel.java deleted file mode 100644 index 25c15c58..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineFarSideModel.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.SideLinePaintBlock; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineFarSideModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineFarSideBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineFarSideBakedModel extends PaintLineBakedModelBase { - - public PaintLineFarSideBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState stateIn) { - IExtendedBlockState state = (IExtendedBlockState) stateIn; - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - EnumFacing facing = state.getValue(SideLinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - List central_a = shapeLine(format, sprite, v*2, v*0, v*14, v*2, 0f, 0f, 0f, 0f); - - List connect_left = shapeLine(format, sprite, v*0, v*0, v*2, v*2, 0f, 0f, 0f, 0f); - List left_down = shapeLine(format, sprite, v*0, v*2, v*2, v*16, 0f, 0f, 0f, 0f); - - List connect_right = shapeLine(format, sprite, v*14, v*0, v*16, v*2, 0f, 0f, 0f, 0f); - List right_down = shapeLine(format, sprite, v*14, v*2, v*16, v*16, 0f, 0f, 0f, 0f); - - boolean lm = state.getValue(SideLinePaintBlock.LEFT_MID); - boolean ld = state.getValue(SideLinePaintBlock.LEFT_DOWN); - - boolean rm = state.getValue(SideLinePaintBlock.RIGHT_MID); - boolean rd = state.getValue(SideLinePaintBlock.RIGHT_DOWN); - - boolean central = state.getValue(SideLinePaintBlock.CENTRAL); - - if (central) { - rawQuads.addAll(central_a); - } - - if (lm || ld) { - rawQuads.addAll(connect_left); - - if (ld) { - rawQuads.addAll(left_down); - } - } - - if (rm || rd) { - rawQuads.addAll(connect_right); - - if (rd) { - rawQuads.addAll(right_down); - } - } - - int rot = 0; - - if (facing == EnumFacing.EAST) { rot = 270; } - if (facing == EnumFacing.SOUTH) { rot = 180; } - if (facing == EnumFacing.WEST) { rot = 90; } - - quads = shapeBuilder(rawQuads, quads, 0, rot); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - - return quads; - } -} - diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineFarSideThickModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineFarSideThickModel.java deleted file mode 100644 index ff741bf8..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineFarSideThickModel.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.SideLinePaintBlock; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineFarSideThickModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineFarSideThickBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineFarSideThickBakedModel extends PaintLineBakedModelBase { - - public PaintLineFarSideThickBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState stateIn) { - IExtendedBlockState state = (IExtendedBlockState) stateIn; - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - EnumFacing facing = state.getValue(SideLinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - List central_a = shapeLine(format, sprite, v*4, v*0, v*12, v*4, 0f, 0f, 0f, 0f); - - List connect_left = shapeLine(format, sprite, v*0, v*0, v*4, v*4, 0f, 0f, 0f, 0f); - List left_down = shapeLine(format, sprite, v*0, v*4, v*4, v*16, 0f, 0f, 0f, 0f); - - List connect_right = shapeLine(format, sprite, v*12, v*0, v*16, v*4, 0f, 0f, 0f, 0f); - List right_down = shapeLine(format, sprite, v*12, v*4, v*16, v*16, 0f, 0f, 0f, 0f); - - boolean lm = state.getValue(SideLinePaintBlock.LEFT_MID); - boolean ld = state.getValue(SideLinePaintBlock.LEFT_DOWN); - - boolean rm = state.getValue(SideLinePaintBlock.RIGHT_MID); - boolean rd = state.getValue(SideLinePaintBlock.RIGHT_DOWN); - - boolean central = state.getValue(SideLinePaintBlock.CENTRAL); - - if (central) { - rawQuads.addAll(central_a); - } - - if (lm || ld) { - rawQuads.addAll(connect_left); - - if (ld) { - rawQuads.addAll(left_down); - } - } - - if (rm || rd) { - rawQuads.addAll(connect_right); - - if (rd) { - rawQuads.addAll(right_down); - } - } - - int rot = 0; - - if (facing == EnumFacing.EAST) { rot = 270; } - if (facing == EnumFacing.SOUTH) { rot = 180; } - if (facing == EnumFacing.WEST) { rot = 90; } - - quads = shapeBuilder(rawQuads, quads, 0, rot); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - - return quads; - } -} - diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineFilterLaneModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineFilterLaneModel.java deleted file mode 100644 index 94f65047..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineFilterLaneModel.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.LinePaintBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.SimpleLinePaintBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineFilterLaneModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineFilterLaneBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineFilterLaneBakedModel extends PaintLineBakedModelBase { - - public PaintLineFilterLaneBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState state) { - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - EnumFacing facing = state.getValue(SimpleLinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - switch (facing) { - case NORTH: - case SOUTH: - rawQuads.addAll(shapeLine(format, sprite, v*5f, v*2f, v*11f, v*14f, 0f, 0f, 0f, 0f)); - break; - case EAST: - case WEST: - rawQuads.addAll(shapeLine(format, sprite, v*2f, v*5f, v*14f, v*11f, 0f, 0f, 0f, 0f)); - break; - } - - quads = shapeBuilder(rawQuads, quads, 0); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineMiddleDashDoubleModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineMiddleDashDoubleModel.java deleted file mode 100644 index 84ec275c..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineMiddleDashDoubleModel.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.LinePaintBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.SimpleLinePaintBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineMiddleDashDoubleModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineMiddleDashDoubleBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineMiddleDashDoubleBakedModel extends PaintLineBakedModelBase { - - public PaintLineMiddleDashDoubleBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState state) { - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - EnumFacing facing = state.getValue(SimpleLinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - if (sprite == null) { - FurenikusRoads.debug(0, "Unable to load sprite from " + FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - } - float v = 1.0f / 16.0f; - - if (sprite != null) { - switch (facing) { - case NORTH: - rawQuads.addAll(shapeLine(format, sprite, v*5f, v*0, v*7f, v*16, 0f, 0f, 0f, 0f)); - rawQuads.addAll(shapeLine(format, sprite, v*9f, v*4.5f, v*11f, v*10.5f, 0f, 0f, 0f, 0f)); - break; - case EAST: - rawQuads.addAll(shapeLine(format, sprite, v*0f, v*5f, v*16f, v*7f, 0f, 0f, 0f, 0f)); - rawQuads.addAll(shapeLine(format, sprite, v*4.5f, v*9f, v*10.5f, v*11f, 0f, 0f, 0f, 0f)); - break; - case SOUTH: - rawQuads.addAll(shapeLine(format, sprite, v*9f, v*0, v*11f, v*16, 0f, 0f, 0f, 0f)); - rawQuads.addAll(shapeLine(format, sprite, v*5f, v*4.5f, v*7f, v*10.5f, 0f, 0f, 0f, 0f)); - break; - case WEST: - rawQuads.addAll(shapeLine(format, sprite, v*0f, v*9f, v*16f, v*11f, 0f, 0f, 0f, 0f)); - rawQuads.addAll(shapeLine(format, sprite, v*4.5f, v*5f, v*10.5f, v*7f, 0f, 0f, 0f, 0f)); - break; - } - - quads = shapeBuilder(rawQuads, quads, 0); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineMiddleHalfDoubleModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineMiddleHalfDoubleModel.java deleted file mode 100644 index d90d8732..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineMiddleHalfDoubleModel.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.LinePaintBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.SimpleLinePaintBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineMiddleHalfDoubleModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineMiddleHalfDoubleBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineMiddleHalfDoubleBakedModel extends PaintLineBakedModelBase { - - public PaintLineMiddleHalfDoubleBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState state) { - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - EnumFacing facing = state.getValue(SimpleLinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - switch (facing) { - case NORTH: - rawQuads.addAll(shapeLine(format, sprite, v*5f, v*0, v*7f, v*16, 0f, 0f, 0f, 0f)); - break; - case EAST: - rawQuads.addAll(shapeLine(format, sprite, v*0f, v*5f, v*16f, v*7f, 0f, 0f, 0f, 0f)); - break; - case SOUTH: - rawQuads.addAll(shapeLine(format, sprite, v*9f, v*0, v*11f, v*16, 0f, 0f, 0f, 0f)); - break; - case WEST: - rawQuads.addAll(shapeLine(format, sprite, v*0f, v*9f, v*16f, v*11f, 0f, 0f, 0f, 0f)); - break; - } - - quads = shapeBuilder(rawQuads, quads, 0); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineMiddleShortModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineMiddleShortModel.java deleted file mode 100644 index 8e5c19f7..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineMiddleShortModel.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.LinePaintBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.SimpleLinePaintBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.model.paint.loaders.PaintLoaderBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineMiddleShortModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineMiddleShortBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineMiddleShortBakedModel extends PaintLineBakedModelBase { - - public PaintLineMiddleShortBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState state) { - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - EnumFacing facing = state.getValue(SimpleLinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - switch (facing) { - case NORTH: - case SOUTH: - rawQuads.addAll(shapeLine(format, sprite, v*7f, v*4, v*9f, v*12, 0f, 0f, 0f, 0f)); - break; - case EAST: - case WEST: - rawQuads.addAll(shapeLine(format, sprite, v*4f, v*7f, v*12f, v*9f, 0f, 0f, 0f, 0f)); - break; - } - - quads = shapeBuilder(rawQuads, quads, 0); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineModel.java deleted file mode 100644 index 40c7f09d..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineModel.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.LinePaintBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.model.paint.loaders.PaintLoaderBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineBakedModel extends PaintLineBakedModelBase { - - public PaintLineBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState stateIn) { - IExtendedBlockState state = (IExtendedBlockState) stateIn; - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - LinePaintBlock.EnumRotation facing = state.getValue(LinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - rawQuads.addAll(shapeLine(format, sprite, v*7, v*7, v*9, v*9, 0f, 0f, 0f, 0f)); //centre - - List north = shapeLine(format, sprite, v*7, v*0, v*9, v*7, 0f, 0f, 0f, 0f); - List east = shapeLine(format, sprite, v*9, v*7, v*16, v*9, 0f, 0f, 0f, 0f); - List south = shapeLine(format, sprite, v*7, v*9, v*9, v*16, 0f, 0f, 0f, 0f); - List west = shapeLine(format, sprite, v*0, v*7, v*7, v*9, 0f, 0f, 0f, 0f); - - if (facing == LinePaintBlock.EnumRotation.ns) { - rawQuads.addAll(north); - rawQuads.addAll(south); - } else if (facing == LinePaintBlock.EnumRotation.ew) { - rawQuads.addAll(east); - rawQuads.addAll(west); - } else if (facing == LinePaintBlock.EnumRotation.connect) { - if (state.getValue(LinePaintBlock.NORTH)) { rawQuads.addAll(north); } - if (state.getValue(LinePaintBlock.EAST)) { rawQuads.addAll(east); } - if (state.getValue(LinePaintBlock.SOUTH)) { rawQuads.addAll(south); } - if (state.getValue(LinePaintBlock.WEST)) { rawQuads.addAll(west); } - } - quads = shapeBuilder(rawQuads, quads, 0); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - - return quads; - } -} - diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideDoubleModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideDoubleModel.java deleted file mode 100644 index fcefe297..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideDoubleModel.java +++ /dev/null @@ -1,204 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.SideLinePaintBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.model.paint.loaders.PaintLoaderBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineSideDoubleModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineSideDoubleBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineSideDoubleBakedModel extends PaintLineBakedModelBase { - - public PaintLineSideDoubleBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState stateIn) { - IExtendedBlockState state = (IExtendedBlockState) stateIn; - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - EnumFacing facing = state.getValue(SideLinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - //central line - List central_a = shapeLine(format, sprite, v*6, v*3, v*10, v*4, 0f, 0f, 0f, 0f); - List central_b = shapeLine(format, sprite, v*6, v*5, v*10, v*6, 0f, 0f, 0f, 0f); - - //connectors left - List connect_left_tl = shapeLine(format, sprite, v*3, v*3, v*4, v*4, 0f, 0f, 0f, 0f); - List connect_left_tr = shapeLine(format, sprite, v*5, v*3, v*6, v*4, 0f, 0f, 0f, 0f); - List connect_left_bl = shapeLine(format, sprite, v*3, v*5, v*4, v*6, 0f, 0f, 0f, 0f); - List connect_left_br = shapeLine(format, sprite, v*5, v*5, v*6, v*6, 0f, 0f, 0f, 0f); - - List connect_left_widget_t = shapeLine(format, sprite, v*4, v*3, v*5, v*4, 0f, 0f, 0f, 0f); - List connect_left_widget_b = shapeLine(format, sprite, v*4, v*5, v*5, v*6, 0f, 0f, 0f, 0f); - List connect_left_widget_l = shapeLine(format, sprite, v*3, v*4, v*4, v*5, 0f, 0f, 0f, 0f); - List connect_left_widget_r = shapeLine(format, sprite, v*5, v*4, v*6, v*5, 0f, 0f, 0f, 0f); - - //lines left - List left_up_a = shapeLine(format, sprite, v*3, v*0, v*4, v*3, 0f, 0f, 0f, 0f); - List left_up_b = shapeLine(format, sprite, v*5, v*0, v*6, v*3, 0f, 0f, 0f, 0f); - - List left_mid_a = shapeLine(format, sprite, v*0, v*3, v*3, v*4, 0f, 0f, 0f, 0f); - List left_mid_b = shapeLine(format, sprite, v*0, v*5, v*3, v*6, 0f, 0f, 0f, 0f); - - List left_down_a = shapeLine(format, sprite, v*3, v*6, v*4, v*16, 0f, 0f, 0f, 0f); - List left_down_b = shapeLine(format, sprite, v*5, v*6, v*6, v*16, 0f, 0f, 0f, 0f); - - //connectors right - List connect_right_tl = shapeLine(format, sprite, v*10, v*3, v*11, v*4, 0f, 0f, 0f, 0f); - List connect_right_tr = shapeLine(format, sprite, v*12, v*3, v*13, v*4, 0f, 0f, 0f, 0f); - List connect_right_bl = shapeLine(format, sprite, v*10, v*5, v*11, v*6, 0f, 0f, 0f, 0f); - List connect_right_br = shapeLine(format, sprite, v*12, v*5, v*13, v*6, 0f, 0f, 0f, 0f); - - List connect_right_widget_t = shapeLine(format, sprite, v*11, v*3, v*12, v*4, 0f, 0f, 0f, 0f); - List connect_right_widget_b = shapeLine(format, sprite, v*11, v*5, v*12, v*6, 0f, 0f, 0f, 0f); - List connect_right_widget_l = shapeLine(format, sprite, v*10, v*4, v*11, v*5, 0f, 0f, 0f, 0f); - List connect_right_widget_r = shapeLine(format, sprite, v*12, v*4, v*13, v*5, 0f, 0f, 0f, 0f); - - //lines right - List right_up_a = shapeLine(format, sprite, v*10, v*0, v*11, v*3, 0f, 0f, 0f, 0f); - List right_up_b = shapeLine(format, sprite, v*12, v*0, v*13, v*3, 0f, 0f, 0f, 0f); - - List right_mid_a = shapeLine(format, sprite, v*13, v*3, v*16, v*4, 0f, 0f, 0f, 0f); - List right_mid_b = shapeLine(format, sprite, v*13, v*5, v*16, v*6, 0f, 0f, 0f, 0f); - - List right_down_a = shapeLine(format, sprite, v*10, v*6, v*11, v*16, 0f, 0f, 0f, 0f); - List right_down_b = shapeLine(format, sprite, v*12, v*6, v*13, v*16, 0f, 0f, 0f, 0f); - - boolean lu = state.getValue(SideLinePaintBlock.LEFT_UP); - boolean lm = state.getValue(SideLinePaintBlock.LEFT_MID); - boolean ld = state.getValue(SideLinePaintBlock.LEFT_DOWN); - - boolean ru = state.getValue(SideLinePaintBlock.RIGHT_UP); - boolean rm = state.getValue(SideLinePaintBlock.RIGHT_MID); - boolean rd = state.getValue(SideLinePaintBlock.RIGHT_DOWN); - - boolean central = state.getValue(SideLinePaintBlock.CENTRAL); - - if (central) { - rawQuads.addAll(central_a); - rawQuads.addAll(central_b); - } - - //Some kind of left connection - if (lu || lm || ld) { - if (!central) { - rawQuads.addAll(connect_left_widget_r); - } - //add the frame for left side connections - rawQuads.addAll(connect_left_tl); - rawQuads.addAll(connect_left_tr); - rawQuads.addAll(connect_left_bl); - rawQuads.addAll(connect_left_br); - //If up, connect up, else block it off - if (lu) { - rawQuads.addAll(left_up_a); - rawQuads.addAll(left_up_b); - } else { - rawQuads.addAll(connect_left_widget_t); - } - //same for mid - if (lm) { - rawQuads.addAll(left_mid_a); - rawQuads.addAll(left_mid_b); - } else { - rawQuads.addAll(connect_left_widget_l); - } - //same for down - if (ld) { - rawQuads.addAll(left_down_a); - rawQuads.addAll(left_down_b); - } else { - rawQuads.addAll(connect_left_widget_b); - } - } - - //Some kind of right connection - if (ru || rm || rd) { - if (!central) { - rawQuads.addAll(connect_right_widget_l); - } - //add the frame for left side connections - rawQuads.addAll(connect_right_tl); - rawQuads.addAll(connect_right_tr); - rawQuads.addAll(connect_right_bl); - rawQuads.addAll(connect_right_br); - //If up, connect up, else block it off - if (ru) { - rawQuads.addAll(right_up_a); - rawQuads.addAll(right_up_b); - } else { - rawQuads.addAll(connect_right_widget_t); - } - //same for mid - if (rm) { - rawQuads.addAll(right_mid_a); - rawQuads.addAll(right_mid_b); - } else { - rawQuads.addAll(connect_right_widget_r); - } - //same for down - if (rd) { - rawQuads.addAll(right_down_a); - rawQuads.addAll(right_down_b); - } else { - rawQuads.addAll(connect_right_widget_b); - } - } - - int rot = 0; - - if (facing == EnumFacing.EAST) { rot = 270; } - if (facing == EnumFacing.SOUTH) { rot = 180; } - if (facing == EnumFacing.WEST) { rot = 90; } - - quads = shapeBuilder(rawQuads, quads, 0, rot); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - return quads; - } -} - diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideDoubleThickModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideDoubleThickModel.java deleted file mode 100644 index 830ef483..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideDoubleThickModel.java +++ /dev/null @@ -1,205 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.SideLinePaintBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.model.paint.loaders.PaintLoaderBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineSideDoubleThickModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineSideDoubleThickBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineSideDoubleThickBakedModel extends PaintLineBakedModelBase { - - public PaintLineSideDoubleThickBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState stateIn) { - IExtendedBlockState state = (IExtendedBlockState) stateIn; - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - EnumFacing facing = state.getValue(SideLinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - //central line - List central_a = shapeLine(format, sprite, v*7, v*2, v*9, v*4, 0f, 0f, 0f, 0f); - List central_b = shapeLine(format, sprite, v*7, v*5, v*9, v*7, 0f, 0f, 0f, 0f); - - //connectors left - List connect_left_tl = shapeLine(format, sprite, v*2, v*2, v*4, v*4, 0f, 0f, 0f, 0f); - List connect_left_tr = shapeLine(format, sprite, v*5, v*2, v*7, v*4, 0f, 0f, 0f, 0f); - List connect_left_bl = shapeLine(format, sprite, v*2, v*5, v*4, v*7, 0f, 0f, 0f, 0f); - List connect_left_br = shapeLine(format, sprite, v*5, v*5, v*7, v*7, 0f, 0f, 0f, 0f); - - List connect_left_widget_t = shapeLine(format, sprite, v*4, v*2, v*5, v*4, 0f, 0f, 0f, 0f); - List connect_left_widget_b = shapeLine(format, sprite, v*4, v*5, v*5, v*7, 0f, 0f, 0f, 0f); - List connect_left_widget_l = shapeLine(format, sprite, v*2, v*4, v*4, v*5, 0f, 0f, 0f, 0f); - List connect_left_widget_r = shapeLine(format, sprite, v*5, v*4, v*7, v*5, 0f, 0f, 0f, 0f); - - //lines left - List left_up_a = shapeLine(format, sprite, v*2, v*0, v*4, v*2, 0f, 0f, 0f, 0f); - List left_up_b = shapeLine(format, sprite, v*5, v*0, v*7, v*2, 0f, 0f, 0f, 0f); - - List left_mid_a = shapeLine(format, sprite, v*0, v*2, v*2, v*4, 0f, 0f, 0f, 0f); - List left_mid_b = shapeLine(format, sprite, v*0, v*5, v*2, v*7, 0f, 0f, 0f, 0f); - - List left_down_a = shapeLine(format, sprite, v*2, v*7, v*4, v*16, 0f, 0f, 0f, 0f); - List left_down_b = shapeLine(format, sprite, v*5, v*7, v*7, v*16, 0f, 0f, 0f, 0f); - - //connectors right - List connect_right_tl = shapeLine(format, sprite, v*9, v*2, v*11, v*4, 0f, 0f, 0f, 0f); - List connect_right_tr = shapeLine(format, sprite, v*12, v*2, v*14, v*4, 0f, 0f, 0f, 0f); - List connect_right_bl = shapeLine(format, sprite, v*9, v*5, v*11, v*7, 0f, 0f, 0f, 0f); - List connect_right_br = shapeLine(format, sprite, v*12, v*5, v*14, v*7, 0f, 0f, 0f, 0f); - - List connect_right_widget_t = shapeLine(format, sprite, v*11, v*2, v*12, v*4, 0f, 0f, 0f, 0f); - List connect_right_widget_b = shapeLine(format, sprite, v*11, v*5, v*12, v*7, 0f, 0f, 0f, 0f); - List connect_right_widget_l = shapeLine(format, sprite, v*9, v*4, v*11, v*5, 0f, 0f, 0f, 0f); - List connect_right_widget_r = shapeLine(format, sprite, v*12, v*4, v*14, v*5, 0f, 0f, 0f, 0f); - - //lines right - List right_up_a = shapeLine(format, sprite, v*9, v*0, v*11, v*2, 0f, 0f, 0f, 0f); - List right_up_b = shapeLine(format, sprite, v*12, v*0, v*14, v*2, 0f, 0f, 0f, 0f); - - List right_mid_a = shapeLine(format, sprite, v*14, v*2, v*16, v*4, 0f, 0f, 0f, 0f); - List right_mid_b = shapeLine(format, sprite, v*14, v*5, v*16, v*7, 0f, 0f, 0f, 0f); - - List right_down_a = shapeLine(format, sprite, v*9, v*7, v*11, v*16, 0f, 0f, 0f, 0f); - List right_down_b = shapeLine(format, sprite, v*12, v*7, v*14, v*16, 0f, 0f, 0f, 0f); - - boolean lu = state.getValue(SideLinePaintBlock.LEFT_UP); - boolean lm = state.getValue(SideLinePaintBlock.LEFT_MID); - boolean ld = state.getValue(SideLinePaintBlock.LEFT_DOWN); - - boolean ru = state.getValue(SideLinePaintBlock.RIGHT_UP); - boolean rm = state.getValue(SideLinePaintBlock.RIGHT_MID); - boolean rd = state.getValue(SideLinePaintBlock.RIGHT_DOWN); - - boolean central = state.getValue(SideLinePaintBlock.CENTRAL); - - if (central) { - rawQuads.addAll(central_a); - rawQuads.addAll(central_b); - } - - //Some kind of left connection - if (lu || lm || ld) { - if (!central) { - rawQuads.addAll(connect_left_widget_r); - } - //add the frame for left side connections - rawQuads.addAll(connect_left_tl); - rawQuads.addAll(connect_left_tr); - rawQuads.addAll(connect_left_bl); - rawQuads.addAll(connect_left_br); - //If up, connect up, else block it off - if (lu) { - rawQuads.addAll(left_up_a); - rawQuads.addAll(left_up_b); - } else { - rawQuads.addAll(connect_left_widget_t); - } - //same for mid - if (lm) { - rawQuads.addAll(left_mid_a); - rawQuads.addAll(left_mid_b); - } else { - rawQuads.addAll(connect_left_widget_l); - } - //same for down - if (ld) { - rawQuads.addAll(left_down_a); - rawQuads.addAll(left_down_b); - } else { - rawQuads.addAll(connect_left_widget_b); - } - } - - //Some kind of right connection - if (ru || rm || rd) { - if (!central) { - rawQuads.addAll(connect_right_widget_l); - } - //add the frame for left side connections - rawQuads.addAll(connect_right_tl); - rawQuads.addAll(connect_right_tr); - rawQuads.addAll(connect_right_bl); - rawQuads.addAll(connect_right_br); - //If up, connect up, else block it off - if (ru) { - rawQuads.addAll(right_up_a); - rawQuads.addAll(right_up_b); - } else { - rawQuads.addAll(connect_right_widget_t); - } - //same for mid - if (rm) { - rawQuads.addAll(right_mid_a); - rawQuads.addAll(right_mid_b); - } else { - rawQuads.addAll(connect_right_widget_r); - } - //same for down - if (rd) { - rawQuads.addAll(right_down_a); - rawQuads.addAll(right_down_b); - } else { - rawQuads.addAll(connect_right_widget_b); - } - } - - int rot = 0; - - if (facing == EnumFacing.EAST) { rot = 270; } - if (facing == EnumFacing.SOUTH) { rot = 180; } - if (facing == EnumFacing.WEST) { rot = 90; } - - quads = shapeBuilder(rawQuads, quads, 0, rot); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - - return quads; - } -} - diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideShortModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideShortModel.java deleted file mode 100644 index 32c89c12..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideShortModel.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.LinePaintBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.SimpleLinePaintBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.model.paint.loaders.PaintLoaderBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineSideShortModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineSideShortBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineSideShortBakedModel extends PaintLineBakedModelBase { - - public PaintLineSideShortBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState state) { - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - EnumFacing facing = state.getValue(SimpleLinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - switch (facing) { - case NORTH: - rawQuads.addAll(shapeLine(format, sprite, v*4f, v*2f, v*12f, v*4f, 0f, 0f, 0f, 0f)); - break; - case EAST: - rawQuads.addAll(shapeLine(format, sprite, v*12f, v*4f, v*14f, v*12f, 0f, 0f, 0f, 0f)); - break; - case SOUTH: - rawQuads.addAll(shapeLine(format, sprite, v*4f, v*12f, v*12f, v*14f, 0f, 0f, 0f, 0f)); - break; - case WEST: - rawQuads.addAll(shapeLine(format, sprite, v*2f, v*4f, v*4f, v*12f, 0f, 0f, 0f, 0f)); - break; - } - - quads = shapeBuilder(rawQuads, quads, 0); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideSingleModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideSingleModel.java deleted file mode 100644 index 94e4f074..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideSingleModel.java +++ /dev/null @@ -1,147 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.SideLinePaintBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.model.paint.loaders.PaintLoaderBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineSideSingleModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineSideSingleBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineSideSingleBakedModel extends PaintLineBakedModelBase { - - public PaintLineSideSingleBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState stateIn) { - IExtendedBlockState state = (IExtendedBlockState) stateIn; - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - EnumFacing facing = state.getValue(SideLinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - List central_a = shapeLine(format, sprite, v*4, v*2, v*12, v*4, 0f, 0f, 0f, 0f); - - //connectors left - List connect_left = shapeLine(format, sprite, v*2, v*2, v*4, v*4, 0f, 0f, 0f, 0f); - - //lines left - List left_up_a = shapeLine(format, sprite, v*2, v*0, v*4, v*2, 0f, 0f, 0f, 0f); - List left_mid_a = shapeLine(format, sprite, v*0, v*2, v*2, v*4, 0f, 0f, 0f, 0f); - List left_down_a = shapeLine(format, sprite, v*2, v*4, v*4, v*16, 0f, 0f, 0f, 0f); - - //connectors right - List connect_right = shapeLine(format, sprite, v*12, v*2, v*14, v*4, 0f, 0f, 0f, 0f); - - //lines right - List right_up_a = shapeLine(format, sprite, v*12, v*0, v*14, v*2, 0f, 0f, 0f, 0f); - List right_mid_a = shapeLine(format, sprite, v*14, v*2, v*16, v*4, 0f, 0f, 0f, 0f); - List right_down_a = shapeLine(format, sprite, v*12, v*4, v*14, v*16, 0f, 0f, 0f, 0f); - - boolean lu = state.getValue(SideLinePaintBlock.LEFT_UP); - boolean lm = state.getValue(SideLinePaintBlock.LEFT_MID); - boolean ld = state.getValue(SideLinePaintBlock.LEFT_DOWN); - - boolean ru = state.getValue(SideLinePaintBlock.RIGHT_UP); - boolean rm = state.getValue(SideLinePaintBlock.RIGHT_MID); - boolean rd = state.getValue(SideLinePaintBlock.RIGHT_DOWN); - - boolean central = state.getValue(SideLinePaintBlock.CENTRAL); - - if (central) { - rawQuads.addAll(central_a); - } - - //Some kind of left connection - if (lu || lm || ld) { - //add the frame for left side connections - rawQuads.addAll(connect_left); - - //If up, connect up, else block it off - if (lu) { - rawQuads.addAll(left_up_a); - } - //same for mid - if (lm) { - rawQuads.addAll(left_mid_a); - } - //same for down - if (ld) { - rawQuads.addAll(left_down_a); - } - } - - //Some kind of right connection - if (ru || rm || rd) { - //add the frame for left side connections - rawQuads.addAll(connect_right); - //If up, connect up, else block it off - if (ru) { - rawQuads.addAll(right_up_a); - } - //same for mid - if (rm) { - rawQuads.addAll(right_mid_a); - } - //same for down - if (rd) { - rawQuads.addAll(right_down_a); - } - } - - int rot = 0; - - if (facing == EnumFacing.EAST) { rot = 270; } - if (facing == EnumFacing.SOUTH) { rot = 180; } - if (facing == EnumFacing.WEST) { rot = 90; } - - quads = shapeBuilder(rawQuads, quads, 0, rot); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - - return quads; - } -} - diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideSingleThickModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideSingleThickModel.java deleted file mode 100644 index 35e2f835..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineSideSingleThickModel.java +++ /dev/null @@ -1,148 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.SideLinePaintBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.model.paint.loaders.PaintLoaderBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineSideSingleThickModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineSideSingleThickBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineSideSingleThickBakedModel extends PaintLineBakedModelBase { - - public PaintLineSideSingleThickBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState stateIn) { - IExtendedBlockState state = (IExtendedBlockState) stateIn; - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - EnumFacing facing = state.getValue(SideLinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - //central line - List central_a = shapeLine(format, sprite, v*6, v*2, v*10, v*6, 0f, 0f, 0f, 0f); - - //connectors left - List connect_left = shapeLine(format, sprite, v*2, v*2, v*6, v*6, 0f, 0f, 0f, 0f); - - //lines left - List left_up_a = shapeLine(format, sprite, v*2, v*0, v*6, v*2, 0f, 0f, 0f, 0f); - List left_mid_a = shapeLine(format, sprite, v*0, v*2, v*2, v*6, 0f, 0f, 0f, 0f); - List left_down_a = shapeLine(format, sprite, v*2, v*6, v*6, v*16, 0f, 0f, 0f, 0f); - - //connectors right - List connect_right = shapeLine(format, sprite, v*10, v*2, v*14, v*6, 0f, 0f, 0f, 0f); - - //lines right - List right_up_a = shapeLine(format, sprite, v*10, v*0, v*14, v*2, 0f, 0f, 0f, 0f); - List right_mid_a = shapeLine(format, sprite, v*14, v*2, v*16, v*6, 0f, 0f, 0f, 0f); - List right_down_a = shapeLine(format, sprite, v*10, v*6, v*14, v*16, 0f, 0f, 0f, 0f); - - boolean lu = state.getValue(SideLinePaintBlock.LEFT_UP); - boolean lm = state.getValue(SideLinePaintBlock.LEFT_MID); - boolean ld = state.getValue(SideLinePaintBlock.LEFT_DOWN); - - boolean ru = state.getValue(SideLinePaintBlock.RIGHT_UP); - boolean rm = state.getValue(SideLinePaintBlock.RIGHT_MID); - boolean rd = state.getValue(SideLinePaintBlock.RIGHT_DOWN); - - boolean central = state.getValue(SideLinePaintBlock.CENTRAL); - - if (central) { - rawQuads.addAll(central_a); - } - - //Some kind of left connection - if (lu || lm || ld) { - //add the frame for left side connections - rawQuads.addAll(connect_left); - - //If up, connect up, else block it off - if (lu) { - rawQuads.addAll(left_up_a); - } - //same for mid - if (lm) { - rawQuads.addAll(left_mid_a); - } - //same for down - if (ld) { - rawQuads.addAll(left_down_a); - } - } - - //Some kind of right connection - if (ru || rm || rd) { - //add the frame for left side connections - rawQuads.addAll(connect_right); - //If up, connect up, else block it off - if (ru) { - rawQuads.addAll(right_up_a); - } - //same for mid - if (rm) { - rawQuads.addAll(right_mid_a); - } - //same for down - if (rd) { - rawQuads.addAll(right_down_a); - } - } - - int rot = 0; - - if (facing == EnumFacing.EAST) { rot = 270; } - if (facing == EnumFacing.SOUTH) { rot = 180; } - if (facing == EnumFacing.WEST) { rot = 90; } - - quads = shapeBuilder(rawQuads, quads, 0, rot); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - - return quads; - } -} - diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineThickModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineThickModel.java deleted file mode 100644 index e6b5460d..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineThickModel.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.LinePaintBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.model.paint.loaders.PaintLoaderBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineThickModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineThickBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineThickBakedModel extends PaintLineBakedModelBase { - - public PaintLineThickBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState stateIn) { - IExtendedBlockState state = (IExtendedBlockState) stateIn; - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - LinePaintBlock.EnumRotation facing = state.getValue(LinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - - float v = 1.0f / 16.0f; - if (sprite != null) { - rawQuads.addAll(shapeLine(format, sprite, v*6, v*6, v*10, v*10, 0f, 0f, 0f, 0f)); //centre - - List north = shapeLine(format, sprite, v*6, v*0, v*10, v*6, 0f, 0f, 0f, 0f); - List east = shapeLine(format, sprite, v*10, v*6, v*16, v*10, 0f, 0f, 0f, 0f); - List south = shapeLine(format, sprite, v*6, v*10, v*10, v*16, 0f, 0f, 0f, 0f); - List west = shapeLine(format, sprite, v*0, v*6, v*6, v*10, 0f, 0f, 0f, 0f); - - if (facing == LinePaintBlock.EnumRotation.ns) { - rawQuads.addAll(north); - rawQuads.addAll(south); - } else if (facing == LinePaintBlock.EnumRotation.ew) { - rawQuads.addAll(east); - rawQuads.addAll(west); - } else if (facing == LinePaintBlock.EnumRotation.connect) { - if (state.getValue(LinePaintBlock.NORTH)) { rawQuads.addAll(north); } - if (state.getValue(LinePaintBlock.EAST)) { rawQuads.addAll(east); } - if (state.getValue(LinePaintBlock.SOUTH)) { rawQuads.addAll(south); } - if (state.getValue(LinePaintBlock.WEST)) { rawQuads.addAll(west); } - } - - quads = shapeBuilder(rawQuads, quads, 0); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineThinCrossingModel.java b/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineThinCrossingModel.java deleted file mode 100644 index a90f89d5..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/model/paint/loaders/lines/PaintLineThinCrossingModel.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.silvaniastudios.roads.client.model.paint.loaders.lines; - -import java.util.ArrayList; -import java.util.List; -import java.util.function.Function; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.paint.LinePaintBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.paint.SimpleLinePaintBlock; -import com.silvaniastudios.roads.client.model.paint.PaintBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintLineBakedModelBase; -import com.silvaniastudios.roads.client.model.paint.PaintModelBase; -import com.silvaniastudios.roads.client.model.paint.loaders.PaintLoaderBase; -import com.silvaniastudios.roads.client.render.Quad; - -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.IBakedModel; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.client.resources.IResourceManager; -import net.minecraft.item.ItemBlock; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.client.model.ICustomModelLoader; -import net.minecraftforge.client.model.IModel; -import net.minecraftforge.common.model.IModelState; -import net.minecraftforge.common.property.IExtendedBlockState; - -public class PaintLineThinCrossingModel extends PaintModelBase { - - @Override - public IBakedModel bake(IModelState state, VertexFormat format, Function bakedTextureGetter) { - return new PaintLineThinCrossingBakedModel(state, format, bakedTextureGetter); - } -} - -class PaintLineThinCrossingBakedModel extends PaintLineBakedModelBase { - - public PaintLineThinCrossingBakedModel(IModelState state, VertexFormat format, Function bakedTextureGetter) { - super(state, format, bakedTextureGetter); - } - - @Override - protected List packQuads(IBlockState state) { - List quads = new ArrayList<>(); - List rawQuads = new ArrayList<>(); - - if (state != null) { - EnumFacing facing = state.getValue(SimpleLinePaintBlock.FACING); - PaintBlockBase paintBlock = (PaintBlockBase) state.getBlock(); - TextureAtlasSprite sprite = Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(FurenikusRoads.MODID + ":blocks/paint_" + paintBlock.getColour().getName()); - float v = 1.0f / 16.0f; - - if (sprite != null) { - switch (facing) { - case NORTH: - case SOUTH: - rawQuads.addAll(shapeLine(format, sprite, v*3f, v*0, v*13f, v*16, 0f, 0f, 0f, 0f)); - break; - case EAST: - case WEST: - rawQuads.addAll(shapeLine(format, sprite, v*0f, v*3f, v*16f, v*13f, 0f, 0f, 0f, 0f)); - break; - } - - quads = shapeBuilder(rawQuads, quads, 0); - } - } else if (stack != null) { - List spriteQuads = getSpriteQuads(); - PaintBlockBase paintBlock = (PaintBlockBase) ((ItemBlock) stack.getItem()).getBlock(); - rawQuads.addAll(spriteQuads); - quads = shapeBuilder(rawQuads, quads, paintBlock.getColour().getColourInt()); - } - - return quads; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/render/DynamicTextureProvider.java b/src/main/java/com/silvaniastudios/roads/client/render/DynamicTextureProvider.java deleted file mode 100644 index c1de0f22..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/render/DynamicTextureProvider.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.silvaniastudios.roads.client.render; - -import com.silvaniastudios.roads.FurenikusRoads; -import net.minecraft.client.renderer.texture.DynamicTexture; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraft.util.ResourceLocation; - -import java.awt.*; -import java.awt.image.BufferedImage; - -public class DynamicTextureProvider { - - private final ResourceLocation textureLocation; - private final DynamicTexture dynamicTexture; - - public DynamicTextureProvider() { - this.textureLocation = new ResourceLocation(FurenikusRoads.MODID, "textures/blocks/my_dynamic_texture.png"); - - // Generate your dynamic texture - BufferedImage image = new BufferedImage(16, 16, BufferedImage.TYPE_INT_ARGB); - Graphics2D g2d = image.createGraphics(); - g2d.setColor(Color.RED); - g2d.fillRect(0, 0, 16, 16); - g2d.dispose(); - - // Convert the BufferedImage to a Minecraft-compatible texture - this.dynamicTexture = new DynamicTexture(image); - } - - public void registerTexture(TextureMap textureMap) { - // Get the ResourceLocation for the dynamic texture - ResourceLocation dynamicTextureLocation = new ResourceLocation(FurenikusRoads.MODID, "blocks/my_dynamic_texture"); - - // Register the dynamic texture with Minecraft's texture atlas - textureMap.registerSprite(dynamicTextureLocation); - - // Get the TextureAtlasSprite for the dynamic texture from Minecraft's texture atlas - //this.textureAtlasSprite = textureMap.getAtlasSprite(dynamicTextureLocation.toString()); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/client/render/Quad.java b/src/main/java/com/silvaniastudios/roads/client/render/Quad.java deleted file mode 100644 index 381b9de9..00000000 --- a/src/main/java/com/silvaniastudios/roads/client/render/Quad.java +++ /dev/null @@ -1,239 +0,0 @@ -package com.silvaniastudios.roads.client.render; - -import java.awt.Color; - -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.texture.TextureAtlasSprite; -import net.minecraft.client.renderer.vertex.VertexFormat; -import net.minecraft.util.math.Vec3d; -import net.minecraftforge.client.model.pipeline.UnpackedBakedQuad; - -public class Quad { - - private Vec3d vec1; - private Vec3d vec2; - private Vec3d vec3; - private Vec3d vec4; - - float u1; - float u2; - float u3; - float u4; - - float v1; - float v2; - float v3; - float v4; - - boolean flipU = false; - boolean flipV = false; - - TextureAtlasSprite sprite; - - protected VertexFormat format; - - public Quad(Vec3d vec1, float u1, float v1, Vec3d vec2, float u2, float v2, Vec3d vec3, float u3, float v3, Vec3d vec4, float u4, float v4, TextureAtlasSprite sprite, VertexFormat format) { - this.vec1 = vec1; - this.vec2 = vec2; - this.vec3 = vec3; - this.vec4 = vec4; - - this.format = format; - - this.u1 = u1; - this.u2 = u2; - this.u3 = u3; - this.u4 = u4; - - this.v1 = v1; - this.v2 = v2; - this.v3 = v3; - this.v4 = v4; - - this.sprite = sprite; - } - - public Quad(Vec3d vec1, Vec3d vec2, Vec3d vec3, Vec3d vec4, TextureAtlasSprite sprite, VertexFormat format) { - this(vec1, (float) vec1.x*16f, (float) vec1.z*16f, - vec2, (float) vec2.x*16f, (float) vec2.z*16f, - vec3, (float) vec3.x*16f, (float) vec3.z*16f, - vec4, (float) vec4.x*16f, (float) vec4.z*16f, - sprite, format); - } - - public void updateUVs() { - if (flipU) { - u1 = 16f - (float) vec1.x*16f; - u2 = 16f - (float) vec2.x*16f; - u3 = 16f - (float) vec3.x*16f; - u4 = 16f - (float) vec4.x*16f; - } else { - u1 = (float) vec1.x*16f; - u2 = (float) vec2.x*16f; - u3 = (float) vec3.x*16f; - u4 = (float) vec4.x*16f; - } - - if (flipV) { - v1 = 16f - (float) vec1.z*16f; - v2 = 16f - (float) vec2.z*16f; - v3 = 16f - (float) vec3.z*16f; - v4 = 16f - (float) vec4.z*16f; - } else { - v1 = (float) vec1.z*16f; - v2 = (float) vec2.z*16f; - v3 = (float) vec3.z*16f; - v4 = (float) vec4.z*16f; - } - } - - public void setFlipU(boolean flip) { - flipU = flip; - } - - public void setFlipV(boolean flip) { - flipV = flip; - } - - public BakedQuad createQuad(int col) { - Vec3d normal = vec3.subtract(vec2).crossProduct(vec1.subtract(vec2)).normalize(); - - UnpackedBakedQuad.Builder builder = new UnpackedBakedQuad.Builder(format); - builder.setTexture(sprite); - - putVertex(builder, normal, vec1.x, vec1.y, vec1.z, u1, v1, sprite, col); - putVertex(builder, normal, vec2.x, vec2.y, vec2.z, u2, v2, sprite, col); - putVertex(builder, normal, vec3.x, vec3.y, vec3.z, u3, v3, sprite, col); - putVertex(builder, normal, vec4.x, vec4.y, vec4.z, u4, v4, sprite, col); - - return builder.build(); - } - - //Pretty much just used for viewing the top of fluid from underneath because thats a weird edge case - public BakedQuad createUnnormalizedQuad(int col) { - Vec3d normal = new Vec3d(1,1,1); - - UnpackedBakedQuad.Builder builder = new UnpackedBakedQuad.Builder(format); - builder.setTexture(sprite); - - putVertex(builder, normal, vec1.x, vec1.y, vec1.z, u1, v1, sprite, col); - putVertex(builder, normal, vec2.x, vec2.y, vec2.z, u2, v2, sprite, col); - putVertex(builder, normal, vec3.x, vec3.y, vec3.z, u3, v3, sprite, col); - putVertex(builder, normal, vec4.x, vec4.y, vec4.z, u4, v4, sprite, col); - - return builder.build(); - } - - //Direct from mcjty's tutorial on IModel usage https://wiki.mcjty.eu/modding/index.php?title=Render_Block_Baked_Model-1.12 - protected void putVertex(UnpackedBakedQuad.Builder builder, Vec3d normal, double x, double y, double z, float u, float v, TextureAtlasSprite sprite, int col) { - for (int e = 0; e < format.getElementCount(); e++) { - switch (format.getElement(e).getUsage()) { - case POSITION: - builder.put(e, (float)x, (float)y, (float)z, 1.0f); - break; - case COLOR: - if (col == 0) { - builder.put(e, 1.0f, 1.0f, 1.0f, 1.0f); - } else { - Color color = new Color(col); - builder.put(e, color.getRed()/255.0f, color.getGreen()/255.0f, color.getBlue()/255.0f, color.getAlpha()/255.0f); - } - break; - case UV: - if (format.getElement(e).getIndex() == 0) { - u = sprite.getInterpolatedU(u); - v = sprite.getInterpolatedV(v); - builder.put(e, u, v, 0f, 1f); - break; - } - case NORMAL: - builder.put(e, (float) normal.x, (float) normal.y, (float) normal.z, 0f); - break; - default: - builder.put(e); - break; - } - } - } - - - - public static Quad rotateQuadX(Quad quadIn, int rot) { - quadIn.vec1 = dotProductX(quadIn.vec1, rot); - quadIn.vec2 = dotProductX(quadIn.vec2, rot); - quadIn.vec3 = dotProductX(quadIn.vec3, rot); - quadIn.vec4 = dotProductX(quadIn.vec4, rot); - return quadIn; - } - - public static Quad rotateQuadY(Quad quadIn, int rot) { - quadIn.vec1 = dotProductY(quadIn.vec1, rot); - quadIn.vec2 = dotProductY(quadIn.vec2, rot); - quadIn.vec3 = dotProductY(quadIn.vec3, rot); - quadIn.vec4 = dotProductY(quadIn.vec4, rot); - return quadIn; - } - - public static Quad rotateQuadZ(Quad quadIn, int rot) { - quadIn.vec1 = dotProductZ(quadIn.vec1, rot); - quadIn.vec2 = dotProductZ(quadIn.vec2, rot); - quadIn.vec3 = dotProductZ(quadIn.vec3, rot); - quadIn.vec4 = dotProductZ(quadIn.vec4, rot); - return quadIn; - } - - - public static void printVector(Vec3d vec) { - System.out.printf("X: %s, Y: %s, Z: %s\n", vec.x, vec.y, vec.z); - } - - //Me, finishing my maths uni module: I hope I never see a dot product again - //Rendering: you called? - public static Vec3d dotProductX(Vec3d vec, int rot) { - //[1 0 0 ] [x] - //[0 cos -sin] [y] - //[0 sin cos] [z] - - vec = vec.add(new Vec3d(-0.5, -0.5, -0.5)); - - double cos = Math.cos(Math.toRadians(rot)); - double sin = Math.sin(Math.toRadians(rot)); - - double vecY = (cos * vec.y) + ((-sin) * vec.z); - double vecZ = (sin * vec.y) + (cos * vec.z); - - return new Vec3d(vec.x + 0.5, vecY + 0.5, vecZ + 0.5); - } - - public static Vec3d dotProductY(Vec3d vec, int rot) { - //[cos 0 sin] [x] - //[0 1 0 ] [y] - //[-sin 0 cos] [z] - - vec = vec.add(new Vec3d(-0.5, -0.5, -0.5)); - - double cos = Math.cos(Math.toRadians(rot)); - double sin = Math.sin(Math.toRadians(rot)); - - double vecX = (cos * vec.x) + (sin * vec.z); - double vecZ = ((-sin) * vec.x) + (cos * vec.z); - - return new Vec3d(vecX + 0.5, vec.y + 0.5, vecZ + 0.5); - } - - public static Vec3d dotProductZ(Vec3d vec, int rot) { - //[cos -sin 0] [x] - //[sin cos 0] [y] - //[0 0 1] [z] - - vec = vec.add(new Vec3d(-0.5, -0.5, -0.5)); - - double cos = Math.cos(Math.toRadians(rot)); - double sin = Math.sin(Math.toRadians(rot)); - - double vecX = (cos * vec.x) + ((-sin) * vec.y); - double vecY = (sin * vec.x) + (cos * vec.y); - - return new Vec3d(vecX + 0.5, vecY + 0.5, vec.z + 0.5); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/fluids/FRFluids.java b/src/main/java/com/silvaniastudios/roads/fluids/FRFluids.java deleted file mode 100644 index 1ec32906..00000000 --- a/src/main/java/com/silvaniastudios/roads/fluids/FRFluids.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.silvaniastudios.roads.fluids; - -import com.silvaniastudios.roads.FurenikusRoads; -import net.minecraftforge.fluids.FluidRegistry; - -public class FRFluids { - - public static ModFluid tar = new ModFluid("tar"); - public static ModFluid white_paint = new ModFluid("white_paint"); - public static ModFluid yellow_paint = new ModFluid("yellow_paint"); - public static ModFluid red_paint = new ModFluid("red_paint"); - - public static void registerFluids() { - FurenikusRoads.debug(0, "Registering fluids"); - FluidRegistry.registerFluid(tar); - FluidRegistry.registerFluid(white_paint); - FluidRegistry.registerFluid(yellow_paint); - FluidRegistry.registerFluid(red_paint); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/fluids/ModFluid.java b/src/main/java/com/silvaniastudios/roads/fluids/ModFluid.java deleted file mode 100644 index f62ff7aa..00000000 --- a/src/main/java/com/silvaniastudios/roads/fluids/ModFluid.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.silvaniastudios.roads.fluids; - -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidRegistry; - -public class ModFluid extends Fluid { - - public ModFluid(String fluidName) { - super(fluidName, new ResourceLocation(FurenikusRoads.MODID, "fluids/" + fluidName + "_still"), new ResourceLocation(FurenikusRoads.MODID, "fluids/" + fluidName + "_flowing")); - FluidRegistry.addBucketForFluid(this); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/items/FRItems.java b/src/main/java/com/silvaniastudios/roads/items/FRItems.java deleted file mode 100644 index 74677729..00000000 --- a/src/main/java/com/silvaniastudios/roads/items/FRItems.java +++ /dev/null @@ -1,188 +0,0 @@ -package com.silvaniastudios.roads.items; - -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.item.Item; -import net.minecraft.item.Item.ToolMaterial; -import net.minecraftforge.registries.IForgeRegistry; - -public class FRItems { - - public static PneumaticDrill pneumatic_drill = (PneumaticDrill) new PneumaticDrill("pneumatic_drill", ToolMaterial.IRON).setCreativeTab(FurenikusRoads.tab_tools); - public static TarmacRammer tarmac_rammer = (TarmacRammer) new TarmacRammer("tarmac_rammer", ToolMaterial.IRON).setCreativeTab(FurenikusRoads.tab_tools); - public static RoadItemBase paint_scraper = (RoadItemBase) new RoadItemBase("paint_scraper", 1).setCreativeTab(FurenikusRoads.tab_tools); - public static PaintGun paint_gun = (PaintGun) new PaintGun("paint_gun").setCreativeTab(FurenikusRoads.tab_tools); - public static ItemWrench wrench = (ItemWrench) new ItemWrench("wrench").setCreativeTab(FurenikusRoads.tab_tools); - - public static RoadItemBase pneumatic_drill_bit = (RoadItemBase) new RoadItemBase("pneumatic_drill_bit", 64).setCreativeTab(FurenikusRoads.tab_tools); - public static RoadItemBase machine_frame = (RoadItemBase) new RoadItemBase("machine_frame", 64).setCreativeTab(FurenikusRoads.tab_tools); - public static RoadItemBase machine_frame_electric = (RoadItemBase) new RoadItemBase("machine_frame_electric", 64).setCreativeTab(FurenikusRoads.tab_tools); - public static RoadItemBase tool_handle = (RoadItemBase) new RoadItemBase("tool_handle", 64).setCreativeTab(FurenikusRoads.tab_tools); - public static RoadItemBase large_glass_tank = (RoadItemBase) new RoadItemBase("large_glass_tank", 64).setCreativeTab(FurenikusRoads.tab_tools); - public static RoadItemBase small_glass_tank = (RoadItemBase) new RoadItemBase("small_glass_tank", 64).setCreativeTab(FurenikusRoads.tab_tools); - public static RoadItemBase paint_gun_barrel = (RoadItemBase) new RoadItemBase("paint_gun_barrel", 64).setCreativeTab(FurenikusRoads.tab_tools); - public static RoadItemBase paint_gun_display = (RoadItemBase) new RoadItemBase("paint_gun_display", 64).setCreativeTab(FurenikusRoads.tab_tools); - - public static RoadItemBase coal_coke = (RoadItemBase) new RoadItemBase("coal_coke", 64).setCreativeTab(FurenikusRoads.tab_tools); - public static RoadItemBase cement_dust = (RoadItemBase) new RoadItemBase("cement_dust", 64).setCreativeTab(FurenikusRoads.tab_tools); - public static RoadItemBase limestone_dust = (RoadItemBase) new RoadItemBase("limestone_dust", 64).setCreativeTab(FurenikusRoads.tab_tools); - public static RoadItemBase clinker_mix = (RoadItemBase) new RoadItemBase("clinker_mix", 64).setCreativeTab(FurenikusRoads.tab_tools); - public static RoadItemBase diamond_nugget = (RoadItemBase) new RoadItemBase("diamond_nugget", 64).setCreativeTab(FurenikusRoads.tab_tools); - - public static TarmacCutterBlade tarmac_cutter_blade_1_iron = (TarmacCutterBlade) new TarmacCutterBlade("tarmac_cutter_blade_1_iron", 1024, 1, "iron").setCreativeTab(FurenikusRoads.tab_tools); - public static TarmacCutterBlade tarmac_cutter_blade_1_gold = (TarmacCutterBlade) new TarmacCutterBlade("tarmac_cutter_blade_1_gold", 512, 1, "gold").setCreativeTab(FurenikusRoads.tab_tools); - public static TarmacCutterBlade tarmac_cutter_blade_1_diamond = (TarmacCutterBlade) new TarmacCutterBlade("tarmac_cutter_blade_1_diamond", 4096, 1, "diamond").setCreativeTab(FurenikusRoads.tab_tools); - public static TarmacCutterBlade tarmac_cutter_blade_2_iron = (TarmacCutterBlade) new TarmacCutterBlade("tarmac_cutter_blade_2_iron", 1024, 2, "iron").setCreativeTab(FurenikusRoads.tab_tools); - public static TarmacCutterBlade tarmac_cutter_blade_2_gold = (TarmacCutterBlade) new TarmacCutterBlade("tarmac_cutter_blade_2_gold", 512, 2, "gold").setCreativeTab(FurenikusRoads.tab_tools); - public static TarmacCutterBlade tarmac_cutter_blade_2_diamond = (TarmacCutterBlade) new TarmacCutterBlade("tarmac_cutter_blade_2_diamond", 4096, 2, "diamond").setCreativeTab(FurenikusRoads.tab_tools); - public static TarmacCutterBlade tarmac_cutter_blade_4_iron = (TarmacCutterBlade) new TarmacCutterBlade("tarmac_cutter_blade_4_iron", 1024, 4, "iron").setCreativeTab(FurenikusRoads.tab_tools); - public static TarmacCutterBlade tarmac_cutter_blade_4_gold = (TarmacCutterBlade) new TarmacCutterBlade("tarmac_cutter_blade_4_gold", 512, 4, "gold").setCreativeTab(FurenikusRoads.tab_tools); - public static TarmacCutterBlade tarmac_cutter_blade_4_diamond = (TarmacCutterBlade) new TarmacCutterBlade("tarmac_cutter_blade_4_diamond", 4096, 4, "diamond").setCreativeTab(FurenikusRoads.tab_tools); - public static TarmacCutterBlade tarmac_cutter_blade_8_iron = (TarmacCutterBlade) new TarmacCutterBlade("tarmac_cutter_blade_8_iron", 1024, 8, "iron").setCreativeTab(FurenikusRoads.tab_tools); - public static TarmacCutterBlade tarmac_cutter_blade_8_gold = (TarmacCutterBlade) new TarmacCutterBlade("tarmac_cutter_blade_8_gold", 512, 8, "gold").setCreativeTab(FurenikusRoads.tab_tools); - public static TarmacCutterBlade tarmac_cutter_blade_8_diamond = (TarmacCutterBlade) new TarmacCutterBlade("tarmac_cutter_blade_8_diamond", 4096, 8, "diamond").setCreativeTab(FurenikusRoads.tab_tools); - - public static ItemFragment tarmac_fragment_standard = (ItemFragment) new ItemFragment("tarmac_fragment_standard").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_concrete_1 = (ItemFragment) new ItemFragment("tarmac_fragment_concrete_1").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_concrete_2 = (ItemFragment) new ItemFragment("tarmac_fragment_concrete_2").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_light = (ItemFragment) new ItemFragment("tarmac_fragment_light").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_fine = (ItemFragment) new ItemFragment("tarmac_fragment_fine").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_dark = (ItemFragment) new ItemFragment("tarmac_fragment_dark").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_pale = (ItemFragment) new ItemFragment("tarmac_fragment_pale").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_red = (ItemFragment) new ItemFragment("tarmac_fragment_red").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_blue = (ItemFragment) new ItemFragment("tarmac_fragment_blue").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_white = (ItemFragment) new ItemFragment("tarmac_fragment_white").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_yellow = (ItemFragment) new ItemFragment("tarmac_fragment_yellow").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_green = (ItemFragment) new ItemFragment("tarmac_fragment_green").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_muddy = (ItemFragment) new ItemFragment("tarmac_fragment_muddy").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_stone = (ItemFragment) new ItemFragment("tarmac_fragment_stone").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_grass = (ItemFragment) new ItemFragment("tarmac_fragment_grass").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_dirt = (ItemFragment) new ItemFragment("tarmac_fragment_dirt").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_gravel = (ItemFragment) new ItemFragment("tarmac_fragment_gravel").setCreativeTab(FurenikusRoads.tab_roads); - public static ItemFragment tarmac_fragment_sand = (ItemFragment) new ItemFragment("tarmac_fragment_sand").setCreativeTab(FurenikusRoads.tab_roads); - - public static ItemFragment sidewalk_fragment_standard = (ItemFragment) new ItemFragment("sidewalk_fragment_standard").setCreativeTab(FurenikusRoads.tab_sidewalks); - public static ItemFragment sidewalk_fragment_clean = (ItemFragment) new ItemFragment("sidewalk_fragment_clean").setCreativeTab(FurenikusRoads.tab_sidewalks); - public static ItemFragment sidewalk_fragment_dark = (ItemFragment) new ItemFragment("sidewalk_fragment_dark").setCreativeTab(FurenikusRoads.tab_sidewalks); - public static ItemFragment sidewalk_fragment_tan = (ItemFragment) new ItemFragment("sidewalk_fragment_tan").setCreativeTab(FurenikusRoads.tab_sidewalks); - - public static void register(IForgeRegistry registry) { - registry.registerAll( - pneumatic_drill, - tarmac_rammer, - paint_scraper, - paint_gun, - wrench, - - pneumatic_drill_bit, - machine_frame, - machine_frame_electric, - tool_handle, - large_glass_tank, - small_glass_tank, - paint_gun_barrel, - paint_gun_display, - - coal_coke, - cement_dust, - limestone_dust, - clinker_mix, - diamond_nugget, - - tarmac_cutter_blade_1_iron, - tarmac_cutter_blade_1_gold, - tarmac_cutter_blade_1_diamond, - tarmac_cutter_blade_2_iron, - tarmac_cutter_blade_2_gold, - tarmac_cutter_blade_2_diamond, - tarmac_cutter_blade_4_iron, - tarmac_cutter_blade_4_gold, - tarmac_cutter_blade_4_diamond, - tarmac_cutter_blade_8_iron, - tarmac_cutter_blade_8_gold, - tarmac_cutter_blade_8_diamond, - - tarmac_fragment_standard, - tarmac_fragment_concrete_1, - tarmac_fragment_concrete_2, - tarmac_fragment_light, - tarmac_fragment_fine, - tarmac_fragment_dark, - tarmac_fragment_pale, - tarmac_fragment_red, - tarmac_fragment_blue, - tarmac_fragment_white, - tarmac_fragment_yellow, - tarmac_fragment_green, - tarmac_fragment_muddy, - tarmac_fragment_stone, - tarmac_fragment_grass, - tarmac_fragment_dirt, - tarmac_fragment_gravel, - tarmac_fragment_sand, - - sidewalk_fragment_standard, - sidewalk_fragment_clean, - sidewalk_fragment_dark - ); - } - - public static void registerModels() { - pneumatic_drill.registerItemModel(); - tarmac_rammer.registerItemModel(); - paint_scraper.registerItemModel(); - paint_gun.registerItemModel(); - wrench.registerItemModel(); - - pneumatic_drill_bit.registerItemModel(); - machine_frame.registerItemModel(); - machine_frame_electric.registerItemModel(); - tool_handle.registerItemModel(); - large_glass_tank.registerItemModel(); - small_glass_tank.registerItemModel(); - paint_gun_barrel.registerItemModel(); - paint_gun_display.registerItemModel(); - - coal_coke.registerItemModel(); - cement_dust.registerItemModel(); - limestone_dust.registerItemModel(); - clinker_mix.registerItemModel(); - diamond_nugget.registerItemModel(); - - tarmac_cutter_blade_1_iron.registerItemModel(); - tarmac_cutter_blade_1_gold.registerItemModel(); - tarmac_cutter_blade_1_diamond.registerItemModel(); - tarmac_cutter_blade_2_iron.registerItemModel(); - tarmac_cutter_blade_2_gold.registerItemModel(); - tarmac_cutter_blade_2_diamond.registerItemModel(); - tarmac_cutter_blade_4_iron.registerItemModel(); - tarmac_cutter_blade_4_gold.registerItemModel(); - tarmac_cutter_blade_4_diamond.registerItemModel(); - tarmac_cutter_blade_8_iron.registerItemModel(); - tarmac_cutter_blade_8_gold.registerItemModel(); - tarmac_cutter_blade_8_diamond.registerItemModel(); - - tarmac_fragment_standard.registerItemModel(); - tarmac_fragment_concrete_1.registerItemModel(); - tarmac_fragment_concrete_2.registerItemModel(); - tarmac_fragment_light.registerItemModel(); - tarmac_fragment_fine.registerItemModel(); - tarmac_fragment_dark.registerItemModel(); - tarmac_fragment_pale.registerItemModel(); - tarmac_fragment_red.registerItemModel(); - tarmac_fragment_blue.registerItemModel(); - tarmac_fragment_white.registerItemModel(); - tarmac_fragment_yellow.registerItemModel(); - tarmac_fragment_green.registerItemModel(); - tarmac_fragment_muddy.registerItemModel(); - tarmac_fragment_stone.registerItemModel(); - tarmac_fragment_grass.registerItemModel(); - tarmac_fragment_dirt.registerItemModel(); - tarmac_fragment_gravel.registerItemModel(); - tarmac_fragment_sand.registerItemModel(); - - sidewalk_fragment_standard.registerItemModel(); - sidewalk_fragment_clean.registerItemModel(); - sidewalk_fragment_dark.registerItemModel(); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/items/ItemFragment.java b/src/main/java/com/silvaniastudios/roads/items/ItemFragment.java deleted file mode 100644 index c03418d0..00000000 --- a/src/main/java/com/silvaniastudios/roads/items/ItemFragment.java +++ /dev/null @@ -1,9 +0,0 @@ -package com.silvaniastudios.roads.items; - -public class ItemFragment extends RoadItemBase { - - public ItemFragment(String name) { - super(name, 64); - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/items/ItemWrench.java b/src/main/java/com/silvaniastudios/roads/items/ItemWrench.java deleted file mode 100644 index 79b61b0c..00000000 --- a/src/main/java/com/silvaniastudios/roads/items/ItemWrench.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.silvaniastudios.roads.items; - -import java.util.List; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.ActionResult; -import net.minecraft.util.EnumActionResult; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class ItemWrench extends RoadItemBase { - - public ItemWrench(String name) { - super(name, 1); - this.setCreativeTab(FurenikusRoads.tab_tools); - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("item.tooltip.wrench_1")); - tooltip.add(I18n.format("item.tooltip.wrench_2")); - if (stack.hasTagCompound()) { - tooltip.add(I18n.format("item.tooltip.wrench_3" + " " + + stack.getTagCompound().getInteger("mode"))); - } - } - - public ActionResult onItemRightClick(World worldIn, EntityPlayer player, EnumHand handIn) { - RayTraceResult rtr = this.rayTrace(worldIn, player, true); - ItemStack stack = player.getHeldItem(handIn); - NBTTagCompound nbt; - - if (rtr == null) { - if (!stack.hasTagCompound()) { - nbt = new NBTTagCompound(); - nbt.setInteger("mode", 0); - } else { - nbt = stack.getTagCompound(); - } - - if (nbt.getInteger("mode") == 0) { - nbt.setInteger("mode", 1); - } else { - nbt.setInteger("mode", 0); - } - - stack.setTagCompound(nbt); - } - - return new ActionResult(EnumActionResult.PASS, stack); - } - - public int getMode(ItemStack stack) { - NBTTagCompound nbt; - - if (!stack.hasTagCompound()) { - nbt = new NBTTagCompound(); - nbt.setInteger("mode", 0); - stack.setTagCompound(nbt); - } - - nbt = stack.getTagCompound(); - if (!nbt.hasKey("mode")) { - nbt.setInteger("mode", 0); - } - return nbt.getInteger("mode"); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/items/PaintGun.java b/src/main/java/com/silvaniastudios/roads/items/PaintGun.java deleted file mode 100644 index 85656da7..00000000 --- a/src/main/java/com/silvaniastudios/roads/items/PaintGun.java +++ /dev/null @@ -1,238 +0,0 @@ -package com.silvaniastudios.roads.items; - -import java.util.List; - -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.RoadBlock; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerEntity; -import com.silvaniastudios.roads.registries.PaintCategoryList; -import com.silvaniastudios.roads.registries.PaintGunItemRegistry; - -import net.minecraft.block.Block; -import net.minecraft.block.BlockSnow; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.gui.GuiScreen; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.EnumAction; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.ActionResult; -import net.minecraft.util.EnumActionResult; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.NonNullList; -import net.minecraft.util.math.BlockPos; -import net.minecraft.util.math.RayTraceResult; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class PaintGun extends RoadItemBase { - - public PaintBlockBase selection; - public int selMeta; - - public int white_paint = 0; - public int yellow_paint = 0; - public int red_paint = 0; - - public PaintGun(String name) { - super(name, 1); - } - - @Override - public EnumAction getItemUseAction(ItemStack stack) { - return EnumAction.NONE; - } - - @Override - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("item.tooltip.paint_gun_1")); - tooltip.add(I18n.format("item.tooltip.paint_gun_2")); - if (stack.hasTagCompound()) { - if (GuiScreen.isShiftKeyDown()) { - NBTTagCompound nbt = stack.getTagCompound(); - int selectId = nbt.getInteger("selectedId"); - int pageId = nbt.getInteger("pageId"); - - selection = getBlockFromSelection(selectId, pageId); - selMeta = nbt.getInteger("selMeta"); - - tooltip.add(I18n.format("item.tooltip.paint_gun.selection") + " " + new ItemStack(selection, 1, selMeta).getDisplayName()); - tooltip.add(I18n.format("item.tooltip.paint_gun.colour") + " " + I18n.format("colour." + nbt.getString("colour"))); - tooltip.add(" "); - tooltip.add(I18n.format("item.tooltip.paint_gun.white") + " " + nbt.getInteger("white_paint")); - tooltip.add(I18n.format("item.tooltip.paint_gun.yellow") + " " + nbt.getInteger("yellow_paint")); - tooltip.add(I18n.format("item.tooltip.paint_gun.red") + " " + nbt.getInteger("red_paint")); - } else { - tooltip.add(I18n.format("item.tooltip.more_info")); - } - } - } - - public static PaintBlockBase getBlockFromSelection(int sel, int page) { - if (PaintGunItemRegistry.categoryList.size() >= page) { - PaintCategoryList cat = PaintGunItemRegistry.categoryList.get(page); - if (cat.size() >= sel) { - return cat.getPaint(sel); - } else { - return cat.getPaint(0); - } - } - return PaintGunItemRegistry.categoryList.get(0).getPaint(0); - } - - public void getSubItems(CreativeTabs tab, NonNullList items) { - if (this.isInCreativeTab(tab)) { - items.add(new ItemStack(this)); - - ItemStack stackFilled = new ItemStack(this); - NBTTagCompound nbt = new NBTTagCompound(); - nbt.setInteger("selectedId", 1); - nbt.setInteger("pageId", 1); - nbt.setString("colour", "white"); - nbt.setInteger("white_paint", PaintFillerEntity.GUN_TANK_CAP); - nbt.setInteger("yellow_paint", PaintFillerEntity.GUN_TANK_CAP); - nbt.setInteger("red_paint", PaintFillerEntity.GUN_TANK_CAP); - - stackFilled.setTagCompound(nbt); - - items.add(stackFilled); - } - } - - @Override - public EnumActionResult onItemUse(EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - ItemStack stack = player.getHeldItem(hand); - - if (stack.getItem() != this) { - return EnumActionResult.FAIL; - } - - NBTTagCompound nbt; - - if (!stack.hasTagCompound()) { - nbt = new NBTTagCompound(); - } else { - nbt = stack.getTagCompound(); - - white_paint = nbt.getInteger("white_paint"); - yellow_paint = nbt.getInteger("yellow_paint"); - red_paint = nbt.getInteger("red_paint"); - } - - String colourId = nbt.getString("colour"); - - //Legacy-proof code, ensure safe switching from int to string based colour information: - if (colourId.equals("0")) { colourId = "white"; } - if (colourId.equals("1")) { colourId = "yellow"; } - if (colourId.equals("2")) { colourId = "red"; } - nbt.setString("colour", colourId); - - boolean creative = player.isCreative(); - int cost = RoadsConfig.general.costToPaint; - - if (colourId.equals("yellow") && (yellow_paint >= cost || creative)) { - if (selectBlockToPlace(nbt, world, pos, facing, hitX, hitY, hitZ, player, hand, colourId)) { - if (!creative) { yellow_paint = yellow_paint - cost; } - } - } - if (colourId.equals("red") && (red_paint >= cost || creative)) { - if (selectBlockToPlace(nbt, world, pos, facing, hitX, hitY, hitZ, player, hand, colourId)) { - if (!creative) { red_paint = red_paint - cost; } - } - } - if (!colourId.equals("yellow") && !colourId.equals("red") && (white_paint >= cost || creative)) { //All other colours will use white paint - if (selectBlockToPlace(nbt, world, pos, facing, hitX, hitY, hitZ, player, hand, colourId)) { - if (!creative) { white_paint = white_paint - cost; } - } - } - - nbt.setInteger("white_paint", white_paint); - nbt.setInteger("yellow_paint", yellow_paint); - nbt.setInteger("red_paint", red_paint); - - return EnumActionResult.PASS; - } - - public ActionResult onItemRightClick(World worldIn, EntityPlayer player, EnumHand handIn) { - RayTraceResult rtr = this.rayTrace(worldIn, player, true); - - if (rtr != null) { - if (rtr.typeOfHit == RayTraceResult.Type.BLOCK) { - BlockPos hitPos = rtr.getBlockPos(); - Block block = worldIn.getBlockState(hitPos).getBlock(); - - //Check if it's somewhere we'll probably be trying to put paint. If it is, we won't open the GUI to avoid frustrations. - if (block instanceof PaintBlockBase || block instanceof RoadBlock) { - return new ActionResult(EnumActionResult.PASS, player.getHeldItem(handIn)); - } - } - } else { - //They're not aiming at any block, so they're not trying to place paint. Might as well give them the GUI. - FurenikusRoads.proxy.openGui(0); - return new ActionResult<>(EnumActionResult.PASS, player.getHeldItem(handIn)); - } - - if (player.isSneaking()) { - FurenikusRoads.proxy.openGui(0); - } - - return new ActionResult<>(EnumActionResult.PASS, player.getHeldItem(handIn)); - } - - public boolean selectBlockToPlace(NBTTagCompound nbt, World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, EntityPlayer player, EnumHand hand, String col) { - int selection = nbt.getInteger("selectedId"); - int pageId = nbt.getInteger("pageId"); - - BlockPos placePos = pos.offset(facing); - - if (!world.getBlockState(placePos).getBlock().isReplaceable(world, placePos)) { return false; } - if (!(world.getBlockState(placePos.offset(EnumFacing.DOWN)).getBlock() instanceof PaintBlockBase) && player.isSneaking()) { return false; } - - PaintBlockBase block = PaintGunItemRegistry.getSelectedPaint(pageId, selection); - int meta = PaintGunItemRegistry.getSelectedPaintMeta(pageId, selection); - - if (PaintGunItemRegistry.getCategory(pageId) != null && PaintGunItemRegistry.getCategory(pageId).getCategoryName().equalsIgnoreCase(PaintGunItemRegistry.TEXT)) { - if (nbt.getBoolean("isLarge")) { - meta = 4; - } - } - - if (block != null) { - if (!col.equals("white")) { block = PaintGunItemRegistry.getAlternativeColour(block, col); } - - int offsetCount = 0; - - if (player.isSneaking()) { - while (world.getBlockState(placePos).getBlock() instanceof PaintBlockBase && offsetCount < 3) { - placePos = placePos.offset(EnumFacing.UP); - offsetCount++; - } - } - - if (world.getBlockState(placePos.offset(EnumFacing.DOWN)).getBlock() instanceof BlockSnow) { - return placeBlock(world, placePos.offset(EnumFacing.DOWN), block.getStateForPlacement(world, placePos, facing, hitX, hitY, hitZ, meta, player, hand)); - } - - return placeBlock(world, placePos, block.getStateForPlacement(world, placePos, facing, hitX, hitY, hitZ, meta, player, hand)); - } - - return false; - } - - public boolean placeBlock(World world, BlockPos pos, IBlockState state) { - boolean b = world.setBlockState(pos, state); - world.notifyBlockUpdate(pos, state, state, 2); //People were getting desync issues, so try forcing a resync after placing paint. - return b; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/items/PneumaticDrill.java b/src/main/java/com/silvaniastudios/roads/items/PneumaticDrill.java deleted file mode 100644 index e9ca3167..00000000 --- a/src/main/java/com/silvaniastudios/roads/items/PneumaticDrill.java +++ /dev/null @@ -1,124 +0,0 @@ -package com.silvaniastudios.roads.items; - -import java.util.List; -import java.util.Set; - -import javax.annotation.Nullable; - -import com.google.common.collect.Sets; -import com.silvaniastudios.roads.FRSounds; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.RoadBlock; -import com.silvaniastudios.roads.blocks.decorative.CurbBlock; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; - -import net.minecraft.block.Block; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.EnumAction; -import net.minecraft.item.ItemStack; -import net.minecraft.item.ItemTool; -import net.minecraft.util.EnumActionResult; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.SoundCategory; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class PneumaticDrill extends ItemTool { - - protected String name; - - private static final Set EFFECTIVE_ON = Sets.newHashSet(FRBlocks.road_block_standard, FRBlocks.road_block_concrete_1, FRBlocks.road_block_concrete_2, FRBlocks.road_block_light, FRBlocks.road_block_fine, - FRBlocks.road_block_dark, FRBlocks.road_block_pale, FRBlocks.road_block_red, FRBlocks.road_block_blue, FRBlocks.road_block_white, FRBlocks.road_block_yellow, FRBlocks.road_block_green, FRBlocks.road_block_muddy, - FRBlocks.road_block_muddy_dried, FRBlocks.road_block_stone, FRBlocks.road_block_grass, FRBlocks.road_block_dirt, FRBlocks.road_block_gravel, FRBlocks.road_block_sand); - - protected PneumaticDrill(String name, ToolMaterial materialIn) { - super(materialIn, EFFECTIVE_ON); - this.setHarvestLevel("pneumatic_drill", 0); - this.name = name; - this.setUnlocalizedName(name); - this.setRegistryName(name); - this.maxStackSize = 1; - this.setMaxDamage(4096); - this.setCreativeTab(FurenikusRoads.tab_tools); - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("item.tooltip.pneumatic_drill")); - } - - public void registerItemModel() { - FurenikusRoads.proxy.registerItemRenderer(this, 0, name); - } - - @Override - public EnumAction getItemUseAction(ItemStack stack) { - return EnumAction.NONE; - } - - @Override - public EnumActionResult onItemUseFirst(EntityPlayer player, World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, EnumHand hand) { - ItemStack stack = player.getHeldItem(hand); - if (stack.getItem() != this) { - return EnumActionResult.FAIL; - } - - if (player.isSneaking()) { - BlockPos posAbove = pos.offset(EnumFacing.UP); - for (int i = 0; i < 4; i++) { - IBlockState stateAbove = world.getBlockState(posAbove); - if (stateAbove.getBlock() instanceof CurbBlock) { - world.setBlockToAir(posAbove); - world.playSound(player, pos, FRSounds.pneumatic_drill, SoundCategory.BLOCKS, 1.0F, 1.0F); - return EnumActionResult.PASS; - } - posAbove = posAbove.offset(EnumFacing.UP); - } - } - - if (world.getBlockState(pos).getBlock() instanceof RoadBlock) { - RoadBlock roadBlock = (RoadBlock) world.getBlockState(pos).getBlock(); - int meta = roadBlock.getMetaFromState(world.getBlockState(pos)); - - if (meta > 0) { - world.setBlockState(pos, world.getBlockState(pos).withProperty(RoadBlock.ENUM_HEIGHT, EnumMeta.byMetadata(meta-1))); - if (!player.isCreative()) { - player.addItemStackToInventory(new ItemStack(roadBlock.getFragmentItem())); - } - world.playSound(player, pos, FRSounds.pneumatic_drill, SoundCategory.BLOCKS, 1.0F, 1.0F); - return EnumActionResult.PASS; - } - } - - if (world.getBlockState(pos).getBlock() instanceof PaintBlockBase) { - BlockPos posBelow = pos.offset(EnumFacing.DOWN); - for (int i = 0; i < 4; i++) { - IBlockState stateBelow = world.getBlockState(posBelow); - if (stateBelow.getBlock() instanceof RoadBlock) { - RoadBlock roadBlock = (RoadBlock) world.getBlockState(posBelow).getBlock(); - int meta = roadBlock.getMetaFromState(world.getBlockState(posBelow)); - - if (meta > 0) { - world.setBlockState(posBelow, world.getBlockState(posBelow).withProperty(RoadBlock.ENUM_HEIGHT, EnumMeta.byMetadata(meta-1))); - if (!player.isCreative()) { - player.addItemStackToInventory(new ItemStack(roadBlock.getFragmentItem())); - } - world.playSound(player, pos, FRSounds.pneumatic_drill, SoundCategory.BLOCKS, 1.0F, 1.0F); - return EnumActionResult.PASS; - } - } - posBelow = posBelow.offset(EnumFacing.DOWN); - } - } - - return EnumActionResult.PASS; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/items/RoadItemBase.java b/src/main/java/com/silvaniastudios/roads/items/RoadItemBase.java deleted file mode 100644 index d466f500..00000000 --- a/src/main/java/com/silvaniastudios/roads/items/RoadItemBase.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.silvaniastudios.roads.items; - -import com.silvaniastudios.roads.FurenikusRoads; - -import net.minecraft.item.Item; - -public class RoadItemBase extends Item { - - protected String name; - - public RoadItemBase(String name, int stackSize) { - this.name = name; - this.setUnlocalizedName(name); - this.setRegistryName(name); - this.maxStackSize = stackSize; - } - - public void registerItemModel() { - FurenikusRoads.proxy.registerItemRenderer(this, 0, name); - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/items/RoadItemBlock.java b/src/main/java/com/silvaniastudios/roads/items/RoadItemBlock.java deleted file mode 100644 index 774b360a..00000000 --- a/src/main/java/com/silvaniastudios/roads/items/RoadItemBlock.java +++ /dev/null @@ -1,96 +0,0 @@ -package com.silvaniastudios.roads.items; - -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.enums.IMetaBlockName; -import com.silvaniastudios.roads.blocks.paint.customs.CustomPaintBlock; - -import net.minecraft.block.Block; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraft.util.text.TextFormatting; -import net.minecraft.util.text.translation.I18n; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -import javax.annotation.Nullable; -import java.util.List; - -public class RoadItemBlock extends ItemBlock { - - public RoadItemBlock(Block block) { - super(block); - this.setHasSubtypes(true); - } - - @Override - public int getMetadata(int dmg) { - return dmg; - } - - @Override - public String getUnlocalizedName(ItemStack stack) { - if (stack.getItem() instanceof ItemBlock) { - ItemBlock ib = (ItemBlock) stack.getItem(); - Block block = ib.getBlock(); - if (block instanceof IMetaBlockName) { - return super.getUnlocalizedName(stack) + "." + ((IMetaBlockName) this.block).getSpecialName(stack); - } - } - return super.getUnlocalizedName(stack); - } - - public String getItemStackDisplayName(ItemStack stack) { - String unloc = this.getUnlocalizedNameInefficiently(stack); - - if (Block.getBlockFromItem(stack.getItem()) instanceof CustomPaintBlock) { - CustomPaintBlock paint = (CustomPaintBlock) Block.getBlockFromItem(stack.getItem()); - if (!paint.isInternal()) { - for (int i = 0; i < FRBlocks.col.size(); i++) { - PaintColour paintCol = FRBlocks.col.get(i); - if (unloc.contains(paintCol.getName())) { - return paintCol.getFormat() + paint.getLocalName(); - } - } - } - } - - if (unloc.contains("hatch_box")) { - - } - - if (Block.getBlockFromItem(stack.getItem()) instanceof IMetaBlockName) { - if (unloc.contains("white")) { return TextFormatting.WHITE + I18n.translateToLocal(unloc + ".name").trim(); } - - for (int i = 0; i < FRBlocks.col.size(); i++) { - PaintColour paintCol = FRBlocks.col.get(i); - if (unloc.contains(paintCol.getName())) { - return paintCol.getFormat() + I18n.translateToLocal(unloc.replace(paintCol.getName(), "white") + ".name").trim(); - } - } - } - - return super.getItemStackDisplayName(stack); - } - - public String getUnformattedDisplayName(ItemStack stack) { - String unloc = this.getUnlocalizedNameInefficiently(stack); - - if (Block.getBlockFromItem(stack.getItem()) instanceof CustomPaintBlock) { - CustomPaintBlock paint = (CustomPaintBlock) Block.getBlockFromItem(stack.getItem()); - if (!paint.isInternal()) { - return paint.getLocalName(); - } - } - - if (Block.getBlockFromItem(stack.getItem()) instanceof IMetaBlockName) { - if (unloc.contains("white")) { I18n.translateToLocal(unloc + ".name").trim(); } - if (unloc.contains("yellow")) { I18n.translateToLocal(unloc.replace("yellow", "white") + ".name").trim(); } - if (unloc.contains("red")) { I18n.translateToLocal(unloc.replace("red", "white") + ".name").trim(); } - } - - return super.getItemStackDisplayName(stack); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/items/RoadsFuelHandler.java b/src/main/java/com/silvaniastudios/roads/items/RoadsFuelHandler.java deleted file mode 100644 index 6cee4afb..00000000 --- a/src/main/java/com/silvaniastudios/roads/items/RoadsFuelHandler.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.silvaniastudios.roads.items; - -import net.minecraft.item.ItemStack; -import net.minecraftforge.fml.common.IFuelHandler; - -@SuppressWarnings("deprecation") -public class RoadsFuelHandler implements IFuelHandler { - - @Override - public int getBurnTime(ItemStack fuel) { - if (fuel.getItem() == FRItems.coal_coke) { - return 2000; - } - return 0; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/items/TarmacCutterBlade.java b/src/main/java/com/silvaniastudios/roads/items/TarmacCutterBlade.java deleted file mode 100644 index a73c435c..00000000 --- a/src/main/java/com/silvaniastudios/roads/items/TarmacCutterBlade.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.silvaniastudios.roads.items; - -import java.util.List; - -import javax.annotation.Nullable; - -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class TarmacCutterBlade extends RoadItemBase { - - public int size; - public String type; - - public TarmacCutterBlade(String name, int maxDmg, int size, String type) { - super(name, 1); - this.setMaxDamage(maxDmg); - this.size = size; - this.setNoRepair(); - this.type = type; - } - - @Override - public boolean showDurabilityBar(ItemStack itemStack) { - if (itemStack.getItemDamage() > 0) { - return true; - } - return false; - } - - public String getType() { - return type; - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add("Size: " + size); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/items/TarmacRammer.java b/src/main/java/com/silvaniastudios/roads/items/TarmacRammer.java deleted file mode 100644 index 7d4ec7ce..00000000 --- a/src/main/java/com/silvaniastudios/roads/items/TarmacRammer.java +++ /dev/null @@ -1,111 +0,0 @@ -package com.silvaniastudios.roads.items; - -import java.util.List; -import java.util.Set; - -import javax.annotation.Nullable; - -import com.google.common.collect.Sets; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.RoadBlock; -import com.silvaniastudios.roads.blocks.enums.EnumMeta; -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; - -import net.minecraft.block.Block; -import net.minecraft.block.state.IBlockState; -import net.minecraft.client.resources.I18n; -import net.minecraft.client.util.ITooltipFlag; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.item.ItemTool; -import net.minecraft.util.EnumActionResult; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.EnumHand; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class TarmacRammer extends ItemTool { - - protected String name; - - private static final Set EFFECTIVE_ON = Sets.newHashSet(); - - protected TarmacRammer(String name, ToolMaterial materialIn) { - super(materialIn, EFFECTIVE_ON); - this.setHarvestLevel("pneumatic_drill", 0); - this.name = name; - this.setUnlocalizedName(name); - this.setRegistryName(name); - this.maxStackSize = 1; - this.setCreativeTab(FurenikusRoads.tab_tools); - } - - public void registerItemModel() { - FurenikusRoads.proxy.registerItemRenderer(this, 0, name); - } - - @SideOnly(Side.CLIENT) - public void addInformation(ItemStack stack, @Nullable World worldIn, List tooltip, ITooltipFlag flagIn) { - tooltip.add(I18n.format("item.tooltip.tarmac_rammer_1")); - tooltip.add(I18n.format("item.tooltip.tarmac_rammer_2")); - } - - @Override - public EnumActionResult onItemUseFirst(EntityPlayer player, World world, BlockPos pos, EnumFacing facing, float hitX, float hitY, float hitZ, EnumHand hand) { - ItemStack stack = player.getHeldItem(hand); - - if (stack.getItem() != this) { - return EnumActionResult.FAIL; - } - - if (world.getBlockState(pos).getBlock() instanceof RoadBlock) { - RoadBlock roadBlock = (RoadBlock) world.getBlockState(pos).getBlock(); - int meta = roadBlock.getMetaFromState(world.getBlockState(pos)); - - if (meta < 15) { - if (!player.isCreative()) { - for (int i = 0; i < player.inventory.getSizeInventory(); i++) { - if (player.inventory.getStackInSlot(i).getItem().equals(roadBlock.getFragmentItem())) { - world.setBlockState(pos, world.getBlockState(pos).withProperty(RoadBlock.ENUM_HEIGHT, EnumMeta.byMetadata(meta+1))); - player.inventory.decrStackSize(i, 1); - return EnumActionResult.PASS; - } - } - } else { - world.setBlockState(pos, world.getBlockState(pos).withProperty(RoadBlock.ENUM_HEIGHT, EnumMeta.byMetadata(meta+1))); - return EnumActionResult.PASS; - } - } - } - - if (world.getBlockState(pos).getBlock() instanceof PaintBlockBase) { - BlockPos posBelow = pos.offset(EnumFacing.DOWN); - for (int i = 0; i < 4; i++) { - IBlockState stateBelow = world.getBlockState(posBelow); - if (stateBelow.getBlock() instanceof RoadBlock) { - RoadBlock roadBlock = (RoadBlock) stateBelow.getBlock(); - int meta = roadBlock.getMetaFromState(stateBelow); - if (meta < 15) { - if (!player.isCreative()) { - for (int j = 0; j < player.inventory.getSizeInventory(); j++) { - if (player.inventory.getStackInSlot(j).getItem().equals(roadBlock.getFragmentItem())) { - world.setBlockState(posBelow, stateBelow.withProperty(RoadBlock.ENUM_HEIGHT, EnumMeta.byMetadata(meta+1))); - player.inventory.decrStackSize(j, 1); - return EnumActionResult.PASS; - } - } - } else { - world.setBlockState(posBelow, stateBelow.withProperty(RoadBlock.ENUM_HEIGHT, EnumMeta.byMetadata(meta+1))); - return EnumActionResult.PASS; - } - } - } - posBelow = posBelow.offset(EnumFacing.DOWN); - } - } - - return EnumActionResult.PASS; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/jei/CompactorCategory.java b/src/main/java/com/silvaniastudios/roads/jei/CompactorCategory.java deleted file mode 100644 index 65f03757..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/CompactorCategory.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorContainer; - -import mezz.jei.api.IGuiHelper; -import mezz.jei.api.gui.IDrawable; -import mezz.jei.api.gui.IDrawableAnimated; -import mezz.jei.api.gui.IGuiItemStackGroup; -import mezz.jei.api.gui.IRecipeLayout; -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeCategory; -import net.minecraft.client.Minecraft; -import net.minecraft.client.resources.I18n; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; - -public class CompactorCategory implements IRecipeCategory { - - private final IDrawable background; - private final IDrawable electric_bar; - private final IDrawable icon; - private final IDrawableAnimated progressBar; - - public static final int width = 162; - public static final int height = 52; - - private boolean electric = false; - private String uid; - - public CompactorCategory(IGuiHelper guiHelper, String uid, boolean electric) { - ResourceLocation guiTexture = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/jei_texture_1.png"); - background = guiHelper.createDrawable(guiTexture, 0, 108, width, height); - electric_bar = guiHelper.createDrawable(guiTexture, 164, 0, 18, 52); - icon = electric ? guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.compactor_electric)) : guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.compactor)); - int progressTick = electric ? RoadsConfig.machine.electricCompactorTickRate : RoadsConfig.machine.compactorTickRate; - progressBar = guiHelper.createAnimatedDrawable(guiHelper.createDrawable(guiTexture, 0, 252, 160, 4), progressTick, IDrawableAnimated.StartDirection.LEFT, false); - this.electric = electric; - this.uid = uid; - } - - @Override - public String getUid() { - return uid; - } - - @Override - public String getTitle() { - if (electric) { - return I18n.format("roads.gui.electric_compactor.name"); - } - return I18n.format("roads.gui.compactor.name"); - } - - @Override - public String getModName() { - return "Fureniku's Roads"; - } - - @Override - public IDrawable getBackground() { - return background; - } - - @Override - public void drawExtras(@Nonnull Minecraft minecraft) { - if (electric) { electric_bar.draw(minecraft, width-18, 0); } - progressBar.draw(minecraft, 1, 47); - } - - @Nullable - @Override - public IDrawable getIcon() { - return icon; - } - - @Override - public void setRecipe(IRecipeLayout recipeLayout, CompactorWrapper recipeWrapper, IIngredients ingredients) { - IGuiItemStackGroup guiStack = recipeLayout.getItemStacks(); - - guiStack.init(CompactorContainer.FRAGMENTS, true, 0, 24); - guiStack.init(CompactorContainer.ROADS, false, 122, 24); - - guiStack.set(CompactorContainer.FRAGMENTS, ingredients.getInputs(VanillaTypes.ITEM).get(0)); - guiStack.set(CompactorContainer.ROADS, ingredients.getOutputs(VanillaTypes.ITEM).get(0)); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/jei/CompactorWrapper.java b/src/main/java/com/silvaniastudios/roads/jei/CompactorWrapper.java deleted file mode 100644 index 193ba907..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/CompactorWrapper.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeWrapper; -import net.minecraft.item.ItemStack; - -public class CompactorWrapper implements IRecipeWrapper { - - private final ItemStack input; - private final ItemStack output; - - public CompactorWrapper(ItemStack input, ItemStack output) { - this.input = input; - this.output = output; - } - - @Override - public void getIngredients(IIngredients ingredients) { - ingredients.setInput(VanillaTypes.ITEM, input); - ingredients.setOutput(VanillaTypes.ITEM, output); - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/jei/CrusherCategory.java b/src/main/java/com/silvaniastudios/roads/jei/CrusherCategory.java deleted file mode 100644 index d2dc3d36..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/CrusherCategory.java +++ /dev/null @@ -1,93 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherContainer; - -import mezz.jei.api.IGuiHelper; -import mezz.jei.api.gui.IDrawable; -import mezz.jei.api.gui.IDrawableAnimated; -import mezz.jei.api.gui.IGuiItemStackGroup; -import mezz.jei.api.gui.IRecipeLayout; -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeCategory; -import net.minecraft.client.Minecraft; -import net.minecraft.client.resources.I18n; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; - -public class CrusherCategory implements IRecipeCategory { - - private final IDrawable background; - private final IDrawable electric_bar; - private final IDrawable icon; - private final IDrawableAnimated progressBar; - - public static final int width = 162; - public static final int height = 52; - - private boolean electric = false; - private String uid; - - public CrusherCategory(IGuiHelper guiHelper, String uid, boolean electric) { - ResourceLocation guiTexture = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/jei_texture_1.png"); - background = guiHelper.createDrawable(guiTexture, 0, 0, width, height); - electric_bar = guiHelper.createDrawable(guiTexture, 164, 0, 18, 52); - icon = electric ? guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.crusher_electric)) : guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.crusher)); - int progressTick = electric ? RoadsConfig.machine.electricCrusherTickRate : RoadsConfig.machine.crusherTickRate; - progressBar = guiHelper.createAnimatedDrawable(guiHelper.createDrawable(guiTexture, 0, 252, 160, 4), progressTick, IDrawableAnimated.StartDirection.LEFT, false); - this.electric = electric; - this.uid = uid; - } - - @Override - public String getUid() { - return uid; - } - - @Override - public String getTitle() { - if (electric) { - return I18n.format("roads.gui.electric_crusher.name"); - } - return I18n.format("roads.gui.crusher.name"); - } - - @Override - public String getModName() { - return "Fureniku's Roads"; - } - - @Override - public IDrawable getBackground() { - return background; - } - - @Override - public void drawExtras(@Nonnull Minecraft minecraft) { - if (electric) { electric_bar.draw(minecraft, width-18, 0); } - progressBar.draw(minecraft, 1, 47); - } - - @Nullable - @Override - public IDrawable getIcon() { - return icon; - } - - @Override - public void setRecipe(IRecipeLayout recipeLayout, CrusherWrapper recipeWrapper, IIngredients ingredients) { - IGuiItemStackGroup guiStack = recipeLayout.getItemStacks(); - - guiStack.init(CrusherContainer.INPUT_1, true, 0, 24); - guiStack.init(CrusherContainer.OUTPUT_1, false, 90, 24); - - guiStack.set(CrusherContainer.INPUT_1, ingredients.getInputs(VanillaTypes.ITEM).get(0)); - guiStack.set(CrusherContainer.OUTPUT_1, ingredients.getOutputs(VanillaTypes.ITEM).get(0)); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/jei/CrusherWrapper.java b/src/main/java/com/silvaniastudios/roads/jei/CrusherWrapper.java deleted file mode 100644 index db0abaf6..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/CrusherWrapper.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeWrapper; -import net.minecraft.item.ItemStack; - -public class CrusherWrapper implements IRecipeWrapper { - - private final ItemStack input; - private final ItemStack output; - - public CrusherWrapper(ItemStack input, ItemStack output) { - this.input = input; - this.output = output; - } - - @Override - public void getIngredients(IIngredients ingredients) { - ingredients.setInput(VanillaTypes.ITEM, input); - ingredients.setOutput(VanillaTypes.ITEM, output); - } -} - - diff --git a/src/main/java/com/silvaniastudios/roads/jei/FRJEIPlugin.java b/src/main/java/com/silvaniastudios/roads/jei/FRJEIPlugin.java deleted file mode 100644 index 008d85d2..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/FRJEIPlugin.java +++ /dev/null @@ -1,190 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import java.util.ArrayList; - -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.tileentities.recipes.CompactorRecipes; -import com.silvaniastudios.roads.blocks.tileentities.recipes.CrusherRecipes; -import com.silvaniastudios.roads.blocks.tileentities.recipes.FabricatorRecipes; -import com.silvaniastudios.roads.blocks.tileentities.recipes.RecipeRegistry; -import com.silvaniastudios.roads.blocks.tileentities.recipes.RoadFactoryRecipes; -import com.silvaniastudios.roads.blocks.tileentities.recipes.TarDistillerRecipes; -import com.silvaniastudios.roads.fluids.FRFluids; -import com.silvaniastudios.roads.items.FRItems; - -import mezz.jei.api.IModPlugin; -import mezz.jei.api.IModRegistry; -import mezz.jei.api.JEIPlugin; -import mezz.jei.api.ingredients.IIngredientBlacklist; -import mezz.jei.api.recipe.IRecipeCategoryRegistration; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidRegistry; -import net.minecraftforge.fluids.FluidStack; - -@JEIPlugin -public class FRJEIPlugin implements IModPlugin { - - @Override - public void register(IModRegistry registry) { - registry.addRecipes(roadFactoryRecipes(), "fr_road_factory"); - registry.addRecipes(tarDistillerRecipes(), "fr_tar_distiller"); - registry.addRecipes(tarmacCutterRecipes(), "fr_tarmac_cutter"); - registry.addRecipes(crusherRecipes(), "fr_crusher"); - registry.addRecipes(paintOvenRecipes(), "fr_paint_oven"); - registry.addRecipes(compactorRecipes(), "fr_compactor"); - registry.addRecipes(fabricatorRecipes(), "fr_fabricator"); - - registry.addRecipes(roadFactoryRecipes(), "fr_electric_road_factory"); - registry.addRecipes(tarDistillerRecipes(), "fr_electric_tar_distiller"); - registry.addRecipes(tarmacCutterRecipes(), "fr_electric_tarmac_cutter"); - registry.addRecipes(crusherRecipes(), "fr_electric_crusher"); - registry.addRecipes(paintOvenRecipes(), "fr_electric_paint_oven"); - registry.addRecipes(compactorRecipes(), "fr_electric_compactor"); - registry.addRecipes(fabricatorRecipes(), "fr_electric_fabricator"); - - if (RoadsConfig.general.hideJEIPaints) { - blacklistedIngredients(registry.getJeiHelpers().getIngredientBlacklist()); - } - } - - @Override - public void registerCategories(IRecipeCategoryRegistration registry) { - registry.addRecipeCategories(new RoadFactoryCategory(registry.getJeiHelpers().getGuiHelper(), "fr_road_factory", false)); - registry.addRecipeCategories(new TarDistillerCategory(registry.getJeiHelpers().getGuiHelper(), "fr_tar_distiller", false)); - registry.addRecipeCategories(new TarmacCutterCategory(registry.getJeiHelpers().getGuiHelper(), "fr_tarmac_cutter", false)); - registry.addRecipeCategories(new CrusherCategory(registry.getJeiHelpers().getGuiHelper(), "fr_crusher", false)); - registry.addRecipeCategories(new PaintOvenCategory(registry.getJeiHelpers().getGuiHelper(), "fr_paint_oven", false)); - registry.addRecipeCategories(new CompactorCategory(registry.getJeiHelpers().getGuiHelper(), "fr_compactor", false)); - registry.addRecipeCategories(new FabricatorCategory(registry.getJeiHelpers().getGuiHelper(), "fr_fabricator", false)); - - registry.addRecipeCategories(new RoadFactoryCategory(registry.getJeiHelpers().getGuiHelper(), "fr_electric_road_factory", true)); - registry.addRecipeCategories(new TarDistillerCategory(registry.getJeiHelpers().getGuiHelper(), "fr_electric_tar_distiller", true)); - registry.addRecipeCategories(new TarmacCutterCategory(registry.getJeiHelpers().getGuiHelper(), "fr_electric_tarmac_cutter", true)); - registry.addRecipeCategories(new CrusherCategory(registry.getJeiHelpers().getGuiHelper(), "fr_electric_crusher", true)); - registry.addRecipeCategories(new PaintOvenCategory(registry.getJeiHelpers().getGuiHelper(), "fr_electric_paint_oven", true)); - registry.addRecipeCategories(new CompactorCategory(registry.getJeiHelpers().getGuiHelper(), "fr_electric_compactor", true)); - registry.addRecipeCategories(new FabricatorCategory(registry.getJeiHelpers().getGuiHelper(), "fr_electric_fabricator", true)); - } - - private void blacklistedIngredients(IIngredientBlacklist blacklist) { - for (int i = 0; i < FRBlocks.paintBlockList.size(); i++) { - blacklist.addIngredientToBlacklist(new ItemStack(FRBlocks.paintBlockList.get(i), 1)); - } - - blacklist.addIngredientToBlacklist(new ItemStack(FRBlocks.road_snow)); - } - - private ArrayList paintOvenRecipes() { - ArrayList recipes = new ArrayList(); - - recipes.add(new PaintOvenWrapper(new ItemStack(Items.DYE, 1, 15), new FluidStack(FluidRegistry.WATER, 1000), new FluidStack(FRFluids.white_paint, 1000))); - recipes.add(new PaintOvenWrapper(new ItemStack(Items.DYE, 1, 11), new FluidStack(FluidRegistry.WATER, 1000), new FluidStack(FRFluids.yellow_paint, 1000))); - recipes.add(new PaintOvenWrapper(new ItemStack(Items.DYE, 1, 1), new FluidStack(FluidRegistry.WATER, 1000), new FluidStack(FRFluids.red_paint, 1000))); - - return recipes; - } - - private ArrayList compactorRecipes() { - ArrayList recipes = new ArrayList(); - - for (int i = 0; i < RecipeRegistry.compactorRecipes.size(); i++) { - CompactorRecipes cr = RecipeRegistry.compactorRecipes.get(i); - for (int j = 0; j < 16; j++) { - recipes.add(new CompactorWrapper(new ItemStack(cr.getInputStack().getItem(), j+1), new ItemStack(cr.getOutputStack().getItem(), 1, j))); - } - } - - return recipes; - } - - private ArrayList fabricatorRecipes() { - ArrayList recipes = new ArrayList(); - - for (int i = 0; i < RecipeRegistry.fabricatorRecipes.size(); i++) { - FabricatorRecipes fr = RecipeRegistry.fabricatorRecipes.get(i); - recipes.add(new FabricatorWrapper(fr.getInput1(), fr.getInput2(), fr.getInput3(), fr.getInput4(), fr.getInput5(), fr.getInput6(), fr.getOutput())); - } - - return recipes; - } - - private ArrayList roadFactoryRecipes() { - ArrayList recipes = new ArrayList(); - - for (int i = 0; i < RecipeRegistry.roadFactoryRecipes.size(); i++) { - RoadFactoryRecipes rfr = RecipeRegistry.roadFactoryRecipes.get(i); - recipes.add(new RoadFactoryWrapper(rfr.getInputStack(), rfr.getModifier(), rfr.getFluidInputStack(), rfr.getOutputStack())); - } - - return recipes; - } - - private ArrayList tarDistillerRecipes() { - ArrayList recipes = new ArrayList(); - - for (int i = 0; i < RecipeRegistry.tarDistillerRecipes.size(); i++) { - TarDistillerRecipes tdr = RecipeRegistry.tarDistillerRecipes.get(i); - recipes.add(new TarDistillerWrapper(tdr.getInputStack(), tdr.getFluidInputStack(), tdr.getOutput1Stack(), tdr.getOutput2Stack(), tdr.getFluidOutput1Stack(), tdr.getFluidOutput2Stack())); - } - - return recipes; - } - - private ArrayList tarmacCutterRecipes() { - ArrayList recipes = new ArrayList(); - - for (int i = 0; i < 15; i++) { - addCutterRecipes(recipes, i, 1); - } - - for (int i = 0; i < 14; i++) { - addCutterRecipes(recipes, i, 2); - } - - for (int i = 0; i < 12; i++) { - addCutterRecipes(recipes, i, 4); - } - - for (int i = 0; i < 8; i++) { - addCutterRecipes(recipes, i, 8); - } - - return recipes; - } - - private void addCutterRecipes(ArrayList recipes, int i, int bladeSize) { - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_standard, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_standard, 1, i), new ItemStack(FRItems.tarmac_fragment_standard, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_concrete_1, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_concrete_1, 1, i), new ItemStack(FRItems.tarmac_fragment_concrete_1, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_concrete_2, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_concrete_2, 1, i), new ItemStack(FRItems.tarmac_fragment_concrete_2, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_light, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_light, 1, i), new ItemStack(FRItems.tarmac_fragment_light, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_fine, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_fine, 1, i), new ItemStack(FRItems.tarmac_fragment_fine, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_dark, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_dark, 1, i), new ItemStack(FRItems.tarmac_fragment_dark, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_pale, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_pale, 1, i), new ItemStack(FRItems.tarmac_fragment_pale, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_red, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_red, 1, i), new ItemStack(FRItems.tarmac_fragment_red, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_blue, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_blue, 1, i), new ItemStack(FRItems.tarmac_fragment_blue, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_white, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_white, 1, i), new ItemStack(FRItems.tarmac_fragment_white, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_yellow, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_yellow, 1, i), new ItemStack(FRItems.tarmac_fragment_yellow, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_green, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_green, 1, i), new ItemStack(FRItems.tarmac_fragment_green, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_muddy, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_muddy, 1, i), new ItemStack(FRItems.tarmac_fragment_muddy, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_muddy_dried, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_muddy_dried, 1, i), new ItemStack(FRItems.tarmac_fragment_muddy, bladeSize))); - - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_stone, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_stone, 1, i), new ItemStack(FRItems.tarmac_fragment_stone, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_grass, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_grass, 1, i), new ItemStack(FRItems.tarmac_fragment_grass, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_dirt, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_dirt, 1, i), new ItemStack(FRItems.tarmac_fragment_dirt, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_gravel, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_gravel, 1, i), new ItemStack(FRItems.tarmac_fragment_gravel, bladeSize))); - recipes.add(new TarmacCutterWrapper(new ItemStack(FRBlocks.road_block_sand, 1, i+bladeSize), new ItemStack(FRBlocks.road_block_sand, 1, i), new ItemStack(FRItems.tarmac_fragment_sand, bladeSize))); - } - - private ArrayList crusherRecipes() { - ArrayList recipes = new ArrayList(); - - for (int i = 0; i < RecipeRegistry.crusherRecipes.size(); i++) { - CrusherRecipes cr = RecipeRegistry.crusherRecipes.get(i); - recipes.add(new CrusherWrapper(cr.getInputStack(), cr.getOutputStack())); - } - - return recipes; - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/jei/FabricatorCategory.java b/src/main/java/com/silvaniastudios/roads/jei/FabricatorCategory.java deleted file mode 100644 index fb240e0b..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/FabricatorCategory.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorContainer; - -import mezz.jei.api.IGuiHelper; -import mezz.jei.api.gui.IDrawable; -import mezz.jei.api.gui.IDrawableAnimated; -import mezz.jei.api.gui.IGuiItemStackGroup; -import mezz.jei.api.gui.IRecipeLayout; -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeCategory; -import net.minecraft.client.Minecraft; -import net.minecraft.client.resources.I18n; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; - -public class FabricatorCategory implements IRecipeCategory { - - private final IDrawable background; - private final IDrawable electric_bar; - private final IDrawable icon; - private final IDrawableAnimated progressBar; - - public static final int width = 162; - public static final int height = 62; - - private boolean electric = false; - private String uid; - - public FabricatorCategory(IGuiHelper guiHelper, String uid, boolean electric) { - ResourceLocation guiTexture = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/jei_texture_3.png"); - background = guiHelper.createDrawable(guiTexture, 0, 0, width, height); - electric_bar = guiHelper.createDrawable(guiTexture, 164, 0, 18, 62); - icon = electric ? guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.fabricator_electric)) : guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.fabricator)); - int progressTick = electric ? RoadsConfig.machine.electricFabricatorTickRate : RoadsConfig.machine.fabricatorTickRate; - progressBar = guiHelper.createAnimatedDrawable(guiHelper.createDrawable(guiTexture, 0, 252, 160, 4), progressTick, IDrawableAnimated.StartDirection.LEFT, false); - this.electric = electric; - this.uid = uid; - } - - @Override - public String getUid() { - return uid; - } - - @Override - public String getTitle() { - if (electric) { - return I18n.format("roads.gui.electric_fabricator.name"); - } - return I18n.format("roads.gui.fabricator.name"); - } - - @Override - public String getModName() { - return "Fureniku's Roads"; - } - - @Override - public IDrawable getBackground() { - return background; - } - - @Override - public void drawExtras(@Nonnull Minecraft minecraft) { - if (electric) { electric_bar.draw(minecraft, width-18, 0); } - progressBar.draw(minecraft, 1, 57); - } - - @Nullable - @Override - public IDrawable getIcon() { - return icon; - } - - @Override - public void setRecipe(IRecipeLayout recipeLayout, FabricatorWrapper recipeWrapper, IIngredients ingredients) { - IGuiItemStackGroup guiStack = recipeLayout.getItemStacks(); - - guiStack.init(FabricatorContainer.IN_1, true, 0, 16); - guiStack.init(FabricatorContainer.IN_2, true, 18, 16); - guiStack.init(FabricatorContainer.IN_3, true, 36, 16); - guiStack.init(FabricatorContainer.IN_4, true, 0, 34); - guiStack.init(FabricatorContainer.IN_5, true, 18, 34); - guiStack.init(FabricatorContainer.IN_6, true, 36, 34); - guiStack.init(FabricatorContainer.OUTPUT, false, 122, 25); - - guiStack.set(FabricatorContainer.IN_1, ingredients.getInputs(VanillaTypes.ITEM).get(0)); - guiStack.set(FabricatorContainer.IN_2, ingredients.getInputs(VanillaTypes.ITEM).get(1)); - guiStack.set(FabricatorContainer.IN_3, ingredients.getInputs(VanillaTypes.ITEM).get(2)); - guiStack.set(FabricatorContainer.IN_4, ingredients.getInputs(VanillaTypes.ITEM).get(3)); - guiStack.set(FabricatorContainer.IN_5, ingredients.getInputs(VanillaTypes.ITEM).get(4)); - guiStack.set(FabricatorContainer.IN_6, ingredients.getInputs(VanillaTypes.ITEM).get(5)); - guiStack.set(FabricatorContainer.OUTPUT, ingredients.getOutputs(VanillaTypes.ITEM).get(0)); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/jei/FabricatorWrapper.java b/src/main/java/com/silvaniastudios/roads/jei/FabricatorWrapper.java deleted file mode 100644 index 503b3b46..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/FabricatorWrapper.java +++ /dev/null @@ -1,54 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import java.util.ArrayList; -import java.util.List; - -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeWrapper; -import net.minecraft.item.ItemStack; - -public class FabricatorWrapper implements IRecipeWrapper { - - private final ItemStack input1; - private final ItemStack input2; - private final ItemStack input3; - private final ItemStack input4; - private final ItemStack input5; - private final ItemStack input6; - private final ItemStack output; - - public FabricatorWrapper(ItemStack input1, ItemStack input2, ItemStack input3, ItemStack input4, ItemStack input5, ItemStack input6, ItemStack output) { - this.input1 = input1; - this.input2 = input2; - this.input3 = input3; - this.input4 = input4; - this.input5 = input5; - this.input6 = input6; - this.output = output; - } - - @Override - public void getIngredients(IIngredients ingredients) { - List > list = asList( - asList(input1), - asList(input2), - asList(input3), - asList(input4), - asList(input5), - asList(input6) - ); - - ingredients.setInputLists(VanillaTypes.ITEM, list); - ingredients.setOutput(VanillaTypes.ITEM, output); - } - - private static List asList(T ... items) { - List list = new ArrayList<>(); - for (T item : items) { - list.add(item); - } - - return list; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/jei/PaintOvenCategory.java b/src/main/java/com/silvaniastudios/roads/jei/PaintOvenCategory.java deleted file mode 100644 index b20c1f5a..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/PaintOvenCategory.java +++ /dev/null @@ -1,102 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenContainer; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenEntity; - -import mezz.jei.api.IGuiHelper; -import mezz.jei.api.gui.IDrawable; -import mezz.jei.api.gui.IDrawableAnimated; -import mezz.jei.api.gui.IGuiFluidStackGroup; -import mezz.jei.api.gui.IGuiItemStackGroup; -import mezz.jei.api.gui.IRecipeLayout; -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeCategory; -import net.minecraft.client.Minecraft; -import net.minecraft.client.resources.I18n; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; - -public class PaintOvenCategory implements IRecipeCategory { - - private final IDrawable background; - private final IDrawable electric_bar; - private final IDrawable icon; - private final IDrawableAnimated progressBar; - - private final IDrawable tankCover; - - public static final int width = 184; - public static final int height = 62; - - private boolean electric = false; - private String uid; - - public PaintOvenCategory(IGuiHelper guiHelper, String uid, boolean electric) { - ResourceLocation guiTexture = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/jei_texture_1.png"); - background = guiHelper.createDrawable(guiTexture, 0, 162, width, height); - electric_bar = guiHelper.createDrawable(guiTexture, 186, 162, 18, 42); - icon = electric ? guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.paint_oven_electric)) : guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.paint_oven)); - int progressTick = electric ? RoadsConfig.machine.electricPaintOvenTickRate : RoadsConfig.machine.paintOvenTickRate; - progressBar = guiHelper.createAnimatedDrawable(guiHelper.createDrawable(guiTexture, 0, 252, 160, 4), progressTick, IDrawableAnimated.StartDirection.LEFT, false); - this.electric = electric; - this.uid = uid; - - tankCover = guiHelper.createDrawable(guiTexture, 196, 0, 60, 50); - } - - @Override - public String getUid() { - return uid; - } - - @Override - public String getTitle() { - if (electric) { - return I18n.format("roads.gui.electric_paint_oven.name"); - } - return I18n.format("roads.gui.paint_oven.name"); - } - - @Override - public String getModName() { - return "Fureniku's Roads"; - } - - @Override - public IDrawable getBackground() { - return background; - } - - @Override - public void drawExtras(@Nonnull Minecraft minecraft) { - if (electric) { electric_bar.draw(minecraft, width-18, 0); } - progressBar.draw(minecraft, 1, 57); - } - - @Nullable - @Override - public IDrawable getIcon() { - return icon; - } - - @Override - public void setRecipe(IRecipeLayout recipeLayout, PaintOvenWrapper recipeWrapper, IIngredients ingredients) { - IGuiItemStackGroup guiStack = recipeLayout.getItemStacks(); - IGuiFluidStackGroup fluidStack = recipeLayout.getFluidStacks(); - - guiStack.init(PaintOvenContainer.DYE, true, 72, 17); - fluidStack.init(3, true, 1, 1, 60, 50, PaintOvenEntity.FILLER_TANK_CAP, true, tankCover); - fluidStack.init(4, false, 101, 1, 60, 50, PaintOvenEntity.FILLER_TANK_CAP, true, tankCover); - - guiStack.set(PaintOvenContainer.DYE, ingredients.getInputs(VanillaTypes.ITEM).get(0)); - fluidStack.set(3, ingredients.getInputs(VanillaTypes.FLUID).get(0)); - fluidStack.set(4, ingredients.getOutputs(VanillaTypes.FLUID).get(0)); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/jei/PaintOvenWrapper.java b/src/main/java/com/silvaniastudios/roads/jei/PaintOvenWrapper.java deleted file mode 100644 index 0c30691a..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/PaintOvenWrapper.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeWrapper; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; - -public class PaintOvenWrapper implements IRecipeWrapper { - - private final ItemStack input; - private final FluidStack fluidInput; - private final FluidStack output; - - public PaintOvenWrapper(ItemStack input, FluidStack fluidInput, FluidStack output) { - this.input = input; - this.fluidInput = fluidInput; - this.output = output; - } - - @Override - public void getIngredients(IIngredients ingredients) { - ingredients.setInput(VanillaTypes.ITEM, input); - ingredients.setInput(VanillaTypes.FLUID, fluidInput); - ingredients.setOutput(VanillaTypes.FLUID, output); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/jei/RoadFactoryCategory.java b/src/main/java/com/silvaniastudios/roads/jei/RoadFactoryCategory.java deleted file mode 100644 index 2fa0aaf2..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/RoadFactoryCategory.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryContainer; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryEntity; - -import mezz.jei.api.IGuiHelper; -import mezz.jei.api.gui.IDrawable; -import mezz.jei.api.gui.IDrawableAnimated; -import mezz.jei.api.gui.IGuiFluidStackGroup; -import mezz.jei.api.gui.IGuiItemStackGroup; -import mezz.jei.api.gui.IRecipeLayout; -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeCategory; -import net.minecraft.client.Minecraft; -import net.minecraft.client.resources.I18n; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; - -public class RoadFactoryCategory implements IRecipeCategory { - - private final IDrawable background; - private final IDrawable electric_bar; - private final IDrawable icon; - private final IDrawableAnimated progressBar; - - private final IDrawable tankCover; - - public static final int width = 162; - public static final int height = 112; - - private boolean electric = false; - private String uid; - - public RoadFactoryCategory(IGuiHelper guiHelper, String uid, boolean electric) { - ResourceLocation guiTexture = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/jei_texture_2.png"); - background = guiHelper.createDrawable(guiTexture, 0, 0, width, height); - electric_bar = guiHelper.createDrawable(guiTexture, 164, 0, 18, 112); - icon = electric ? guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.road_factory_electric)) : guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.road_factory)); - int progressTick = electric ? RoadsConfig.machine.electricRoadFactoryTickRate : RoadsConfig.machine.roadFactoryTickRate; - progressBar = guiHelper.createAnimatedDrawable(guiHelper.createDrawable(guiTexture, 0, 252, 160, 4), progressTick, IDrawableAnimated.StartDirection.LEFT, false); - this.electric = electric; - this.uid = uid; - - tankCover = guiHelper.createDrawable(guiTexture, 236, 0, 20, 100); - } - - @Override - public String getUid() { - return uid; - } - - @Override - public String getTitle() { - if (electric) { - return I18n.format("roads.gui.electric_road_factory.name"); - } - return I18n.format("roads.gui.road_factory.name"); - } - - @Override - public String getModName() { - return "Fureniku's Roads"; - } - - @Override - public IDrawable getBackground() { - return background; - } - - @Override - public void drawExtras(@Nonnull Minecraft minecraft) { - if (electric) { electric_bar.draw(minecraft, width-18, 0); } - progressBar.draw(minecraft, 1, 107); - } - - @Nullable - @Override - public IDrawable getIcon() { - return icon; - } - - @Override - public void setRecipe(IRecipeLayout recipeLayout, RoadFactoryWrapper recipeWrapper, IIngredients ingredients) { - IGuiItemStackGroup itemStack = recipeLayout.getItemStacks(); - IGuiFluidStackGroup fluidStack = recipeLayout.getFluidStacks(); - - itemStack.init(RoadFactoryContainer.INPUT_1, true, 26, 12); - itemStack.init(RoadFactoryContainer.MODIFIER, true, 74, 35); - itemStack.init(RoadFactoryContainer.OUTPUT_1, false, 99, 12); - fluidStack.init(12, true, 1, 1, 20, 100, RoadFactoryEntity.TANK_CAP, true, tankCover); - - itemStack.set(RoadFactoryContainer.INPUT_1, ingredients.getInputs(VanillaTypes.ITEM).get(0)); - itemStack.set(RoadFactoryContainer.MODIFIER, ingredients.getInputs(VanillaTypes.ITEM).get(1)); - fluidStack.set(12, ingredients.getInputs(VanillaTypes.FLUID).get(0)); - itemStack.set(RoadFactoryContainer.OUTPUT_1, ingredients.getOutputs(VanillaTypes.ITEM).get(0)); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/jei/RoadFactoryWrapper.java b/src/main/java/com/silvaniastudios/roads/jei/RoadFactoryWrapper.java deleted file mode 100644 index c157f8f0..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/RoadFactoryWrapper.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import java.util.ArrayList; - -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeWrapper; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; - -public class RoadFactoryWrapper implements IRecipeWrapper { - - private final ItemStack input; - private final ItemStack modifier; - private final FluidStack fluidInput; - private final ItemStack output; - - public RoadFactoryWrapper(ItemStack input, ItemStack modifier, FluidStack fluidInput, ItemStack output) { - this.input = input; - this.modifier = modifier; - this.fluidInput = fluidInput; - this.output = output; - } - - @Override - public void getIngredients(IIngredients ingredients) { - ArrayList list = new ArrayList(); - list.add(input); - list.add(modifier); - ingredients.setInputs(VanillaTypes.ITEM, list); - ingredients.setInput(VanillaTypes.FLUID, fluidInput); - ingredients.setOutput(VanillaTypes.ITEM, output); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/jei/TarDistillerCategory.java b/src/main/java/com/silvaniastudios/roads/jei/TarDistillerCategory.java deleted file mode 100644 index b76ef6eb..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/TarDistillerCategory.java +++ /dev/null @@ -1,116 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerContainer; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerEntity; - -import mezz.jei.api.IGuiHelper; -import mezz.jei.api.gui.IDrawable; -import mezz.jei.api.gui.IDrawableAnimated; -import mezz.jei.api.gui.IGuiFluidStackGroup; -import mezz.jei.api.gui.IGuiItemStackGroup; -import mezz.jei.api.gui.IRecipeLayout; -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeCategory; -import net.minecraft.client.Minecraft; -import net.minecraft.client.resources.I18n; -import net.minecraft.init.Items; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; - -public class TarDistillerCategory implements IRecipeCategory { - - private final IDrawable background; - private final IDrawable electric_bar; - private final IDrawable icon; - private final IDrawableAnimated progressBar; - - private final IDrawable tankCover; - - public static final int width = 184; - public static final int height = 112; - - private boolean electric = false; - private String uid; - - public TarDistillerCategory(IGuiHelper guiHelper, String uid, boolean electric) { - ResourceLocation guiTexture = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/jei_texture_2.png"); - background = guiHelper.createDrawable(guiTexture, 0, 114, width, height); - electric_bar = guiHelper.createDrawable(guiTexture, 186, 114, 18, 112); - icon = electric ? guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.tar_distiller_electric)) : guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.tar_distiller)); - int progressTick = electric ? RoadsConfig.machine.electricTarDistillerTickRate : RoadsConfig.machine.tarDistillerTickRate; - progressBar = guiHelper.createAnimatedDrawable(guiHelper.createDrawable(guiTexture, 0, 252, 160, 4), progressTick, IDrawableAnimated.StartDirection.LEFT, false); - this.electric = electric; - this.uid = uid; - - tankCover = guiHelper.createDrawable(guiTexture, 236, 0, 20, 100); - } - - @Override - public String getUid() { - return uid; - } - - @Override - public String getTitle() { - if (electric) { - return I18n.format("roads.gui.electric_tar_distiller.name"); - } - return I18n.format("roads.gui.tar_distiller.name"); - } - - @Override - public String getModName() { - return "Fureniku's Roads"; - } - - @Override - public IDrawable getBackground() { - return background; - } - - @Override - public void drawExtras(@Nonnull Minecraft minecraft) { - if (electric) { electric_bar.draw(minecraft, width-18, 0); } - progressBar.draw(minecraft, 1, 107); - } - - @Nullable - @Override - public IDrawable getIcon() { - return icon; - } - - @Override - public void setRecipe(IRecipeLayout recipeLayout, TarDistillerWrapper recipeWrapper, IIngredients ingredients) { - IGuiItemStackGroup itemStack = recipeLayout.getItemStacks(); - IGuiFluidStackGroup fluidStack = recipeLayout.getFluidStacks(); - - itemStack.init(TarDistillerContainer.INPUT, true, 26, 22); - itemStack.init(TarDistillerContainer.OUTPUT_1, false, 92, 0); - itemStack.init(TarDistillerContainer.OUTPUT_2, false, 92, 22); - if (!electric) { itemStack.init(TarDistillerContainer.FUEL, true, 166, 22); } - fluidStack.init(10, true, 1, 1, 20, 100, TarDistillerEntity.TANK_CAP, true, tankCover); - fluidStack.init(11, false, 115, 1, 20, 100, TarDistillerEntity.TANK_CAP, true, tankCover); - fluidStack.init(12, false, 141, 1, 20, 100, TarDistillerEntity.TANK_CAP, true, tankCover); - - itemStack.set(TarDistillerContainer.INPUT, ingredients.getInputs(VanillaTypes.ITEM).get(0)); - if (!electric) { itemStack.set(TarDistillerContainer.FUEL, new ItemStack(Items.LAVA_BUCKET)); } - itemStack.set(TarDistillerContainer.OUTPUT_1, ingredients.getOutputs(VanillaTypes.ITEM).get(0)); - itemStack.set(TarDistillerContainer.OUTPUT_2, ingredients.getOutputs(VanillaTypes.ITEM).get(1)); - - int in = ingredients.getInputs(VanillaTypes.FLUID).size(); - int out = ingredients.getOutputs(VanillaTypes.FLUID).size(); - - if (in > 0) { fluidStack.set(10, ingredients.getInputs(VanillaTypes.FLUID).get(0)); } - if (out > 0) { fluidStack.set(11, ingredients.getOutputs(VanillaTypes.FLUID).get(0)); } - if (out > 1) { fluidStack.set(12, ingredients.getOutputs(VanillaTypes.FLUID).get(1)); } - - } -} diff --git a/src/main/java/com/silvaniastudios/roads/jei/TarDistillerWrapper.java b/src/main/java/com/silvaniastudios/roads/jei/TarDistillerWrapper.java deleted file mode 100644 index 7b3637a0..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/TarDistillerWrapper.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import java.util.ArrayList; - -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeWrapper; -import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.FluidStack; - -public class TarDistillerWrapper implements IRecipeWrapper { - - private final ItemStack itemIn; - private final ItemStack itemOut1; - private final ItemStack itemOut2; - - private final FluidStack fluidIn; - private final FluidStack fluidOut1; - private final FluidStack fluidOut2; - - public TarDistillerWrapper(ItemStack itemIn, FluidStack fluidIn, ItemStack itemOut1, ItemStack itemOut2, FluidStack fluidOut1, FluidStack fluidOut2) { - this.itemIn = itemIn; - this.fluidIn = fluidIn; - this.itemOut1 = itemOut1; - this.itemOut2 = itemOut2; - this.fluidOut1 = fluidOut1; - this.fluidOut2 = fluidOut2; - } - - @Override - public void getIngredients(IIngredients ingredients) { - ingredients.setInput(VanillaTypes.ITEM, itemIn); - if (fluidIn != null) { ingredients.setInput(VanillaTypes.FLUID, fluidIn); } - - ArrayList output = new ArrayList(2); - ArrayList fluidOut = new ArrayList(2); - - output.add(itemOut1); - output.add(itemOut2); - if (fluidOut1 != null) { fluidOut.add(fluidOut1); } - if (fluidOut2 != null) { fluidOut.add(fluidOut2); } - - ingredients.setOutputs(VanillaTypes.ITEM, output); - ingredients.setOutputs(VanillaTypes.FLUID, fluidOut); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/jei/TarmacCutterCategory.java b/src/main/java/com/silvaniastudios/roads/jei/TarmacCutterCategory.java deleted file mode 100644 index 65ad7e3c..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/TarmacCutterCategory.java +++ /dev/null @@ -1,132 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import java.util.ArrayList; - -import javax.annotation.Nonnull; -import javax.annotation.Nullable; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterContainer; -import com.silvaniastudios.roads.items.FRItems; - -import mezz.jei.api.IGuiHelper; -import mezz.jei.api.gui.IDrawable; -import mezz.jei.api.gui.IDrawableAnimated; -import mezz.jei.api.gui.IGuiItemStackGroup; -import mezz.jei.api.gui.IRecipeLayout; -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeCategory; -import net.minecraft.client.Minecraft; -import net.minecraft.client.resources.I18n; -import net.minecraft.item.ItemStack; -import net.minecraft.util.ResourceLocation; - -public class TarmacCutterCategory implements IRecipeCategory { - - private final IDrawable background; - private final IDrawable electric_bar; - private final IDrawable icon; - private final IDrawableAnimated progressBar; - - public static final int width = 162; - public static final int height = 52; - - private String uid; - - private boolean electric = false; - - public TarmacCutterCategory(IGuiHelper guiHelper, String uid, boolean electric) { - ResourceLocation guiTexture = new ResourceLocation(FurenikusRoads.MODID + ":textures/gui/jei_texture_1.png"); - background = guiHelper.createDrawable(guiTexture, 0, 54, width, height); - electric_bar = guiHelper.createDrawable(guiTexture, 164, 0, 18, 52); - icon = electric ? guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.tarmac_cutter_electric)) : guiHelper.createDrawableIngredient(new ItemStack(FRBlocks.tarmac_cutter)); - int progressTick = electric ? RoadsConfig.machine.electricTarmacCutterTickRate : RoadsConfig.machine.tarmacCutterTickRate; - progressBar = guiHelper.createAnimatedDrawable(guiHelper.createDrawable(guiTexture, 0, 252, 160, 4), progressTick, IDrawableAnimated.StartDirection.LEFT, false); - this.electric = electric; - this.uid = uid; - } - - @Override - public String getUid() { - return uid; - } - - @Override - public String getTitle() { - if (electric) { - return I18n.format("roads.gui.electric_tarmac_cutter.name"); - } - return I18n.format("roads.gui.tarmac_cutter.name"); - } - - @Override - public String getModName() { - return "Fureniku's Roads"; - } - - @Override - public IDrawable getBackground() { - return background; - } - - @Override - public void drawExtras(@Nonnull Minecraft minecraft) { - if (electric) { electric_bar.draw(minecraft, width-18, 0); } - progressBar.draw(minecraft, 1, 47); - } - - @Nullable - @Override - public IDrawable getIcon() { - return icon; - } - - @Override - public void setRecipe(IRecipeLayout recipeLayout, TarmacCutterWrapper recipeWrapper, IIngredients ingredients) { - IGuiItemStackGroup guiStack = recipeLayout.getItemStacks(); - - ArrayList blade_1 = new ArrayList(); - ArrayList blade_2 = new ArrayList(); - ArrayList blade_4 = new ArrayList(); - ArrayList blade_8 = new ArrayList(); - - blade_1.add(new ItemStack(FRItems.tarmac_cutter_blade_1_diamond)); - blade_1.add(new ItemStack(FRItems.tarmac_cutter_blade_1_gold)); - blade_1.add(new ItemStack(FRItems.tarmac_cutter_blade_1_iron)); - blade_2.add(new ItemStack(FRItems.tarmac_cutter_blade_2_diamond)); - blade_2.add(new ItemStack(FRItems.tarmac_cutter_blade_2_gold)); - blade_2.add(new ItemStack(FRItems.tarmac_cutter_blade_2_iron)); - blade_4.add(new ItemStack(FRItems.tarmac_cutter_blade_4_diamond)); - blade_4.add(new ItemStack(FRItems.tarmac_cutter_blade_4_gold)); - blade_4.add(new ItemStack(FRItems.tarmac_cutter_blade_4_iron)); - blade_8.add(new ItemStack(FRItems.tarmac_cutter_blade_8_diamond)); - blade_8.add(new ItemStack(FRItems.tarmac_cutter_blade_8_gold)); - blade_8.add(new ItemStack(FRItems.tarmac_cutter_blade_8_iron)); - - guiStack.init(TarmacCutterContainer.INPUT, true, 0, 24); - guiStack.init(TarmacCutterContainer.BLADE, true, 45, 24); - guiStack.init(TarmacCutterContainer.OUTPUT_1, false, 90, 24); - guiStack.init(TarmacCutterContainer.OUTPUT_2, false, 108, 24); - - ItemStack fragments = ingredients.getOutputs(VanillaTypes.ITEM).get(1).get(0); - - guiStack.set(TarmacCutterContainer.INPUT, ingredients.getInputs(VanillaTypes.ITEM).get(0)); - - if (fragments.getCount() == 1) { - guiStack.set(TarmacCutterContainer.BLADE, blade_1); - } else if (fragments.getCount() == 2) { - guiStack.set(TarmacCutterContainer.BLADE, blade_2); - } else if (fragments.getCount() == 4) { - guiStack.set(TarmacCutterContainer.BLADE, blade_4); - } else { - guiStack.set(TarmacCutterContainer.BLADE, blade_8); - } - - guiStack.set(TarmacCutterContainer.OUTPUT_1, ingredients.getOutputs(VanillaTypes.ITEM).get(0)); - guiStack.set(TarmacCutterContainer.OUTPUT_2, fragments); - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/jei/TarmacCutterWrapper.java b/src/main/java/com/silvaniastudios/roads/jei/TarmacCutterWrapper.java deleted file mode 100644 index eb569c2f..00000000 --- a/src/main/java/com/silvaniastudios/roads/jei/TarmacCutterWrapper.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.silvaniastudios.roads.jei; - -import java.util.ArrayList; - -import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.ingredients.VanillaTypes; -import mezz.jei.api.recipe.IRecipeWrapper; -import net.minecraft.item.ItemStack; - -public class TarmacCutterWrapper implements IRecipeWrapper { - - private final ItemStack input; - private final ItemStack output; - private final ItemStack outputFragments; - - public TarmacCutterWrapper(ItemStack input, ItemStack output, ItemStack outputFragments) { - this.input = input; - this.output = output; - this.outputFragments = outputFragments; - } - - @Override - public void getIngredients(IIngredients ingredients) { - ArrayList input1 = new ArrayList(); - input1.add(input); - - ArrayList outputs = new ArrayList(); - - outputs.add(output); - outputs.add(outputFragments); - - ingredients.setInput(VanillaTypes.ITEM, input); - ingredients.setOutputs(VanillaTypes.ITEM, outputs); - } -} \ No newline at end of file diff --git a/src/main/java/com/silvaniastudios/roads/network/ClientGuiUpdatePacket.java b/src/main/java/com/silvaniastudios/roads/network/ClientGuiUpdatePacket.java deleted file mode 100644 index 75e828ca..00000000 --- a/src/main/java/com/silvaniastudios/roads/network/ClientGuiUpdatePacket.java +++ /dev/null @@ -1,180 +0,0 @@ -package com.silvaniastudios.roads.network; - -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorContainer; -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherContainer; -import com.silvaniastudios.roads.blocks.tileentities.crusher.CrusherElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerContainer; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.distiller.TarDistillerEntity; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorContainer; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerContainer; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintfiller.PaintFillerEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenContainer; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.paintoven.PaintOvenEntity; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryContainer; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryElectricEntity; -import com.silvaniastudios.roads.blocks.tileentities.roadfactory.RoadFactoryEntity; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterContainer; -import com.silvaniastudios.roads.blocks.tileentities.tarmaccutter.TarmacCutterElectricEntity; - -import io.netty.buffer.ByteBuf; -import net.minecraft.client.Minecraft; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraftforge.fml.common.network.simpleimpl.IMessage; -import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler; -import net.minecraftforge.fml.common.network.simpleimpl.MessageContext; -import net.minecraftforge.fml.relauncher.Side; -import net.minecraftforge.fml.relauncher.SideOnly; - -public class ClientGuiUpdatePacket implements IMessage { - - public ClientGuiUpdatePacket(){} - - private int id; - private int amount; - - public ClientGuiUpdatePacket(int id, int amount) { - this.id = id; - this.amount = amount; - } - - @Override - public void toBytes(ByteBuf buf) { - buf.writeInt(id); - buf.writeInt(amount); - } - - @Override - public void fromBytes(ByteBuf buf) { - id = buf.readInt(); - amount = buf.readInt(); - } - - public static class Handler implements IMessageHandler { - - @Override - @SideOnly(Side.CLIENT) - public IMessage onMessage(ClientGuiUpdatePacket message, MessageContext ctx) { - EntityPlayer player = Minecraft.getMinecraft().player; - - int id = message.id; - int amount = message.amount; - - if (player.openContainer instanceof TarDistillerContainer) { - TarDistillerContainer ctr = (TarDistillerContainer) player.openContainer; - TarDistillerEntity te = ctr.tileEntity; - - if (te instanceof TarDistillerElectricEntity && id == 0) { - TarDistillerElectricEntity tdee = (TarDistillerElectricEntity) te; - tdee.energy.setEnergy(amount); - } - - if (id == 1 && te.fluidInput.getFluid() != null) { - te.fluidInput.getFluid().amount = amount; - } - if (id == 2 && te.fluidOutput1.getFluid() != null) { - te.fluidOutput1.getFluid().amount = amount; - } - if (id == 3 && te.fluidOutput2.getFluid() != null) { - te.fluidOutput2.getFluid().amount = amount; - } - } - - if (player.openContainer instanceof CompactorContainer) { - CompactorContainer ctr = (CompactorContainer) player.openContainer; - - if (ctr.tileEntity instanceof CompactorElectricEntity && id == 0) { - CompactorElectricEntity tdee = (CompactorElectricEntity) ctr.tileEntity; - tdee.energy.setEnergy(amount); - } - } - - if (player.openContainer instanceof CrusherContainer) { - CrusherContainer ctr = (CrusherContainer) player.openContainer; - - if (ctr.tileEntity instanceof CrusherElectricEntity && id == 0) { - CrusherElectricEntity tdee = (CrusherElectricEntity) ctr.tileEntity; - tdee.energy.setEnergy(amount); - } - } - - if (player.openContainer instanceof FabricatorContainer) { - FabricatorContainer ctr = (FabricatorContainer) player.openContainer; - - if (ctr.tileEntity instanceof FabricatorElectricEntity && id == 0) { - FabricatorElectricEntity tdee = (FabricatorElectricEntity) ctr.tileEntity; - tdee.energy.setEnergy(amount); - } - } - - //paint filler - energy white yellow red - if (player.openContainer instanceof PaintFillerContainer) { - PaintFillerContainer ctr = (PaintFillerContainer) player.openContainer; - PaintFillerEntity te = ctr.tileEntity; - - if (te instanceof PaintFillerElectricEntity && id == 0) { - PaintFillerElectricEntity tdee = (PaintFillerElectricEntity) te; - tdee.energy.setEnergy(amount); - } - - if (id == 1 && te.white_paint.getFluid() != null) { - te.white_paint.getFluid().amount = amount; - } - if (id == 2 && te.yellow_paint.getFluid() != null) { - te.yellow_paint.getFluid().amount = amount; - } - if (id == 3 && te.red_paint.getFluid() != null) { - te.red_paint.getFluid().amount = amount; - } - } - - //paint oven - energy paint water - if (player.openContainer instanceof PaintOvenContainer) { - PaintOvenContainer ctr = (PaintOvenContainer) player.openContainer; - PaintOvenEntity te = ctr.tileEntity; - - if (te instanceof PaintOvenElectricEntity && id == 0) { - PaintOvenElectricEntity tdee = (PaintOvenElectricEntity) te; - tdee.energy.setEnergy(amount); - } - - if (id == 1 && te.paint.getFluid() != null) { - te.paint.getFluid().amount = amount; - } - if (id == 2 && te.water.getFluid() != null) { - te.water.getFluid().amount = amount; - } - } - - //road factory - energy tarfluid - if (player.openContainer instanceof RoadFactoryContainer) { - RoadFactoryContainer ctr = (RoadFactoryContainer) player.openContainer; - RoadFactoryEntity te = ctr.tileEntity; - - if (te instanceof RoadFactoryElectricEntity && id == 0) { - RoadFactoryElectricEntity tdee = (RoadFactoryElectricEntity) te; - tdee.energy.setEnergy(amount); - } - - if (id == 1 && te.tarFluid.getFluid() != null) { - te.tarFluid.getFluid().amount = amount; - } - } - - //tarmac cutter - if (player.openContainer instanceof TarmacCutterContainer) { - TarmacCutterContainer ctr = (TarmacCutterContainer) player.openContainer; - - if (ctr.tileEntity instanceof TarmacCutterElectricEntity && id == 0) { - TarmacCutterElectricEntity tdee = (TarmacCutterElectricEntity) ctr.tileEntity; - tdee.energy.setEnergy(amount); - } - } - return null; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/network/CompactorUpdatePacket.java b/src/main/java/com/silvaniastudios/roads/network/CompactorUpdatePacket.java deleted file mode 100644 index 9abe4c42..00000000 --- a/src/main/java/com/silvaniastudios/roads/network/CompactorUpdatePacket.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.silvaniastudios.roads.network; - -import com.silvaniastudios.roads.blocks.tileentities.compactor.CompactorContainer; - -import io.netty.buffer.ByteBuf; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraftforge.fml.common.network.simpleimpl.IMessage; -import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler; -import net.minecraftforge.fml.common.network.simpleimpl.MessageContext; - -public class CompactorUpdatePacket implements IMessage { - - public CompactorUpdatePacket(){} - - private int change_amt; - - public CompactorUpdatePacket(int change_amt) { - this.change_amt = change_amt; - } - - @Override - public void toBytes(ByteBuf buf) { - buf.writeInt(change_amt); - } - - @Override - public void fromBytes(ByteBuf buf) { - change_amt = buf.readInt(); - } - - public static class Handler implements IMessageHandler { - - @Override - public IMessage onMessage(CompactorUpdatePacket message, MessageContext ctx) { - EntityPlayerMP player = ctx.getServerHandler().player; - - int change_amt = message.change_amt; - - if (player.openContainer instanceof CompactorContainer) { - CompactorContainer ctr = (CompactorContainer) player.openContainer; - ctr.tileEntity.road_size += change_amt; - if (ctr.tileEntity.road_size > 15) { ctr.tileEntity.road_size = 15; } - if (ctr.tileEntity.road_size < 0) { ctr.tileEntity.road_size = 0; } - } - return null; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/network/FabricatorUpdatePacket.java b/src/main/java/com/silvaniastudios/roads/network/FabricatorUpdatePacket.java deleted file mode 100644 index c3b7acda..00000000 --- a/src/main/java/com/silvaniastudios/roads/network/FabricatorUpdatePacket.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.silvaniastudios.roads.network; - -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.tileentities.fabricator.FabricatorEntity; - -import io.netty.buffer.ByteBuf; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.util.math.BlockPos; -import net.minecraft.world.World; -import net.minecraftforge.energy.CapabilityEnergy; -import net.minecraftforge.fml.common.network.simpleimpl.IMessage; -import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler; -import net.minecraftforge.fml.common.network.simpleimpl.MessageContext; - -public class FabricatorUpdatePacket implements IMessage { - - public FabricatorUpdatePacket(){} - - private int recipeId; - private int posX; - private int posY; - private int posZ; - - public FabricatorUpdatePacket(int recipeId, int xPos, int yPos, int zPos) { - this.recipeId = recipeId; - this.posX = xPos; - this.posY = yPos; - this.posZ = zPos; - } - - @Override - public void toBytes(ByteBuf buf) { - buf.writeInt(recipeId); - buf.writeInt(posX); - buf.writeInt(posY); - buf.writeInt(posZ); - } - - @Override - public void fromBytes(ByteBuf buf) { - recipeId = buf.readInt(); - posX = buf.readInt(); - posY = buf.readInt(); - posZ = buf.readInt(); - } - - public static class Handler implements IMessageHandler { - - @Override - public IMessage onMessage(FabricatorUpdatePacket message, MessageContext ctx) { - EntityPlayerMP player = ctx.getServerHandler().player; - World world = player.world; - - int recipeId = message.recipeId; - int posX = message.posX; - int posY = message.posY; - int posZ = message.posZ; - - BlockPos pos = new BlockPos(posX, posY, posZ); - - if (world.getTileEntity(pos) != null && player.getPosition().distanceSq(posX, posY, posZ) < 100) { - if (world.getTileEntity(pos) instanceof FabricatorEntity) { - FabricatorEntity entity = (FabricatorEntity) world.getTileEntity(pos); - entity.recipeId = recipeId; - entity.sendUpdates(); - player.openGui(FurenikusRoads.instance, entity.hasCapability(CapabilityEnergy.ENERGY, null) ? 16 : 15, world, pos.getX(), pos.getY(), pos.getZ()); - } - } - return null; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/network/PaintGunUpdatePacket.java b/src/main/java/com/silvaniastudios/roads/network/PaintGunUpdatePacket.java deleted file mode 100644 index c7e99dfd..00000000 --- a/src/main/java/com/silvaniastudios/roads/network/PaintGunUpdatePacket.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.silvaniastudios.roads.network; - -import com.silvaniastudios.roads.items.PaintGun; - -import io.netty.buffer.ByteBuf; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumHand; -import net.minecraftforge.fml.common.network.ByteBufUtils; -import net.minecraftforge.fml.common.network.simpleimpl.IMessage; -import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler; -import net.minecraftforge.fml.common.network.simpleimpl.MessageContext; - -public class PaintGunUpdatePacket implements IMessage { - - public PaintGunUpdatePacket(){} - - private int selection; - private String selectedColour; - private int pageId; - private boolean isLarge; - - public PaintGunUpdatePacket(int selection, String selectedColour, int pageId, boolean isLarge) { - this.selection = selection; - this.selectedColour = selectedColour; - this.pageId = pageId; - this.isLarge = isLarge; - } - - @Override - public void toBytes(ByteBuf buf) { - buf.writeInt(selection); - ByteBufUtils.writeUTF8String(buf, selectedColour); - buf.writeInt(pageId); - buf.writeBoolean(isLarge); - } - - @Override - public void fromBytes(ByteBuf buf) { - selection = buf.readInt(); - selectedColour = ByteBufUtils.readUTF8String(buf); - pageId = buf.readInt(); - isLarge = buf.readBoolean(); - } - - public static class Handler implements IMessageHandler { - - @Override - public IMessage onMessage(PaintGunUpdatePacket message, MessageContext ctx) { - EntityPlayerMP player = ctx.getServerHandler().player; - - int selection = message.selection; - String selectedColour = message.selectedColour; - int pageId = message.pageId; - boolean isLarge = message.isLarge; - - player.getServerWorld().addScheduledTask(() -> { - ItemStack item = player.getHeldItem(EnumHand.MAIN_HAND); - if (item.getItem() instanceof PaintGun) { - NBTTagCompound nbt; - - if (item.hasTagCompound()) { - nbt = item.getTagCompound(); - } else { - nbt = new NBTTagCompound(); - } - - nbt.setInteger("selectedId", selection); - nbt.setString("colour", selectedColour); - nbt.setInteger("pageId", pageId); - nbt.setBoolean("isLarge", isLarge); - - item.setTagCompound(nbt); - } - }); - return null; - } - } -} diff --git a/src/main/java/com/silvaniastudios/roads/registries/CustomPaintModelRegistry.java b/src/main/java/com/silvaniastudios/roads/registries/CustomPaintModelRegistry.java deleted file mode 100644 index 12bafa7a..00000000 --- a/src/main/java/com/silvaniastudios/roads/registries/CustomPaintModelRegistry.java +++ /dev/null @@ -1,358 +0,0 @@ -package com.silvaniastudios.roads.registries; - -import com.google.gson.JsonArray; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; -import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; - -import java.io.*; -import java.net.JarURLConnection; -import java.net.URL; -import java.util.ArrayList; -import java.util.Enumeration; -import java.util.jar.JarEntry; -import java.util.jar.JarFile; - -public class CustomPaintModelRegistry { - - static ArrayList jsonList = new ArrayList<>(); - - public PaintGrid wheelchair_icon = importedGrid("wheelchair_icon"); - public PaintGrid chevron_icon = importedGrid("chevron_icon"); - - public PaintGrid pedestrian_low = importedGrid("pedestrian_low"); - public PaintGrid pedestrian_high = importedGrid("pedestrian_high"); - public PaintGrid merge_arrow_low = importedGrid("merge_arrow_low"); - public PaintGrid merge_arrow_high = importedGrid("merge_arrow_high"); - public PaintGrid give_way_low = importedGrid("give_way_low"); - public PaintGrid give_way_high = importedGrid("give_way_high"); - - public PaintGrid junction_in_a = importedGrid("junction_in_a"); - public PaintGrid junction_in_b = importedGrid("junction_in_b"); - public PaintGrid junction_out_a = importedGrid("junction_out_a"); - public PaintGrid junction_out_b = importedGrid("junction_out_b"); - public PaintGrid junction_mid_a = importedGrid("junction_mid_a"); - public PaintGrid junction_mid_b = importedGrid("junction_mid_b"); - - public PaintGrid chevron_mid_1 = importedGrid("chevron_mid_1"); - public PaintGrid chevron_mid_2 = importedGrid("chevron_mid_2"); - public PaintGrid chevron_mid_thin_1 = importedGrid("chevron_mid_thin_1"); - public PaintGrid chevron_mid_thin_2 = importedGrid("chevron_mid_thin_2"); - - public PaintGrid chevron_mid_left_1 = importedGrid("chevron_mid_left_1"); - public PaintGrid chevron_mid_left_2 = importedGrid("chevron_mid_left_2"); - public PaintGrid chevron_mid_thin_left_1 = importedGrid("chevron_mid_thin_left_1"); - public PaintGrid chevron_mid_thin_left_2 = importedGrid("chevron_mid_thin_left_2"); - - public PaintGrid chevron_mid_right_1 = importedGrid("chevron_mid_right_1"); - public PaintGrid chevron_mid_right_2 = importedGrid("chevron_mid_right_2"); - public PaintGrid chevron_mid_thin_right_1 = importedGrid("chevron_mid_thin_right_1"); - public PaintGrid chevron_mid_thin_right_2 = importedGrid("chevron_mid_thin_right_2"); - - public PaintGrid crossing_diagonal_1 = importedGrid("crossing_diagonal_1"); - public PaintGrid crossing_diagonal_2 = importedGrid("crossing_diagonal_2"); - public PaintGrid crossing_diagonal_3 = importedGrid("crossing_diagonal_3"); - public PaintGrid crossing_diagonal_4 = importedGrid("crossing_diagonal_4"); - - public PaintGrid empty = importedGrid("empty"); - public PaintGrid junction_mid_1 = importedGrid("junction_mid_1"); - public PaintGrid junction_mid_2 = importedGrid("junction_mid_2"); - public PaintGrid junction_mid_3 = importedGrid("junction_mid_3"); - public PaintGrid junction_mid_thin_1 = importedGrid("junction_mid_thin_1"); - public PaintGrid junction_mid_thin_2 = importedGrid("junction_mid_thin_2"); - public PaintGrid junction_mid_thin_3 = importedGrid("junction_mid_thin_3"); - public PaintGrid junction_mid_chevron_2 = importedGrid("junction_mid_chevron_2"); - public PaintGrid junction_mid_chevron_3 = importedGrid("junction_mid_chevron_3"); - public PaintGrid junction_mid_chevron_4 = importedGrid("junction_mid_chevron_4"); - public PaintGrid junction_mid_chevron_thin_3 = importedGrid("junction_mid_chevron_thin_3"); - - public PaintGrid letter_a = importedGrid("letter_a"); - public PaintGrid letter_b = importedGrid("letter_b"); - public PaintGrid letter_c = importedGrid("letter_c"); - public PaintGrid letter_d = importedGrid("letter_d"); - public PaintGrid letter_e = importedGrid("letter_e"); - public PaintGrid letter_f = importedGrid("letter_f"); - public PaintGrid letter_g = importedGrid("letter_g"); - public PaintGrid letter_h = importedGrid("letter_h"); - public PaintGrid letter_i = importedGrid("letter_i"); - public PaintGrid letter_j = importedGrid("letter_j"); - public PaintGrid letter_k = importedGrid("letter_k"); - public PaintGrid letter_l = importedGrid("letter_l"); - public PaintGrid letter_m = importedGrid("letter_m"); - public PaintGrid letter_n = importedGrid("letter_n"); - public PaintGrid letter_o = importedGrid("letter_o"); - public PaintGrid letter_p = importedGrid("letter_p"); - public PaintGrid letter_q = importedGrid("letter_q"); - public PaintGrid letter_r = importedGrid("letter_r"); - public PaintGrid letter_s = importedGrid("letter_s"); - public PaintGrid letter_t = importedGrid("letter_t"); - public PaintGrid letter_u = importedGrid("letter_u"); - public PaintGrid letter_v = importedGrid("letter_v"); - public PaintGrid letter_w = importedGrid("letter_w"); - public PaintGrid letter_x = importedGrid("letter_x"); - public PaintGrid letter_y = importedGrid("letter_y"); - public PaintGrid letter_z = importedGrid("letter_z"); - - public PaintGrid number_0 = importedGrid("number_0"); - public PaintGrid number_1 = importedGrid("number_1"); - public PaintGrid number_2 = importedGrid("number_2"); - public PaintGrid number_3 = importedGrid("number_3"); - public PaintGrid number_4 = importedGrid("number_4"); - public PaintGrid number_5 = importedGrid("number_5"); - public PaintGrid number_6 = importedGrid("number_6"); - public PaintGrid number_7 = importedGrid("number_7"); - public PaintGrid number_8 = importedGrid("number_8"); - public PaintGrid number_9 = importedGrid("number_9"); - - public PaintGrid punct_question = importedGrid("punct_question"); - public PaintGrid punct_exclamation = importedGrid("punct_exclaim"); - public PaintGrid punct_hash = importedGrid("punct_hash"); - public PaintGrid punct_slash = importedGrid("punct_slash"); - - public PaintGrid text_slow_small = importedGrid("text_slow_small"); - public PaintGrid text_stop_small = importedGrid("text_stop_small"); - public PaintGrid text_bike_small = importedGrid("text_bike_small"); - public PaintGrid text_bus_small = importedGrid("text_bus_small"); - public PaintGrid text_taxi_small = importedGrid("text_taxi_small"); - public PaintGrid text_lane_small = importedGrid("text_lane_small"); - public PaintGrid text_keep_small = importedGrid("text_keep_small"); - public PaintGrid text_clear_small = importedGrid("text_clear_small"); - public PaintGrid text_turn_small = importedGrid("text_turn_small"); - public PaintGrid text_left_small = importedGrid("text_left_small"); - public PaintGrid text_right_small = importedGrid("text_right_small"); - public PaintGrid text_only_small = importedGrid("text_only_small"); - public PaintGrid text_no_small = importedGrid("text_no_small"); - public PaintGrid text_entry_small = importedGrid("text_entry_small"); - public PaintGrid text_bike_icon_small = importedGrid("text_bike_icon_small"); - public PaintGrid text_town_small = importedGrid("text_town_small"); - public PaintGrid text_city_small = importedGrid("text_city_small"); - public PaintGrid text_ctre_small = importedGrid("text_ctre_small"); - - public PaintGrid text_slow_l = importedGrid("text_slow_l"); - public PaintGrid text_stop_l = importedGrid("text_stop_l"); - public PaintGrid text_bike_l = importedGrid("text_bike_l"); - public PaintGrid text_bus_l = importedGrid("text_bus_l"); - public PaintGrid text_taxi_l = importedGrid("text_taxi_l"); - public PaintGrid text_lane_l = importedGrid("text_lane_l"); - public PaintGrid text_keep_l = importedGrid("text_keep_l"); - public PaintGrid text_clear_l = importedGrid("text_clear_l"); - public PaintGrid text_turn_l = importedGrid("text_turn_l"); - public PaintGrid text_left_l = importedGrid("text_left_l"); - public PaintGrid text_right_l = importedGrid("text_right_l"); - public PaintGrid text_only_l = importedGrid("text_only_l"); - public PaintGrid text_no_l = importedGrid("text_no_l"); - public PaintGrid text_entry_l = importedGrid("text_entry_l"); - public PaintGrid text_bike_icon_l = importedGrid("text_bike_icon_l"); - public PaintGrid text_town_l = importedGrid("text_town_l"); - public PaintGrid text_city_l = importedGrid("text_city_l"); - public PaintGrid text_ctre_l = importedGrid("text_ctre_l"); - - public PaintGrid text_slow_m = importedGrid("text_slow_m"); - public PaintGrid text_stop_m = importedGrid("text_stop_m"); - public PaintGrid text_bike_m = importedGrid("text_bike_m"); - public PaintGrid text_bus_m = importedGrid("text_bus_m"); - public PaintGrid text_taxi_m = importedGrid("text_taxi_m"); - public PaintGrid text_lane_m = importedGrid("text_lane_m"); - public PaintGrid text_keep_m = importedGrid("text_keep_m"); - public PaintGrid text_clear_m = importedGrid("text_clear_m"); - public PaintGrid text_turn_m = importedGrid("text_turn_m"); - public PaintGrid text_left_m = importedGrid("text_left_m"); - public PaintGrid text_right_m = importedGrid("text_right_m"); - public PaintGrid text_only_m = importedGrid("text_only_m"); - public PaintGrid text_no_m = importedGrid("text_no_m"); - public PaintGrid text_entry_m = importedGrid("text_entry_m"); - public PaintGrid text_bike_icon_m = importedGrid("text_bike_icon_m"); - public PaintGrid text_town_m = importedGrid("text_town_m"); - public PaintGrid text_city_m = importedGrid("text_city_m"); - public PaintGrid text_ctre_m = importedGrid("text_ctre_m"); - - public PaintGrid text_slow_r = importedGrid("text_slow_r"); - public PaintGrid text_stop_r = importedGrid("text_stop_r"); - public PaintGrid text_bike_r = importedGrid("text_bike_r"); - public PaintGrid text_bus_r = importedGrid("text_bus_r"); - public PaintGrid text_taxi_r = importedGrid("text_taxi_r"); - public PaintGrid text_lane_r = importedGrid("text_lane_r"); - public PaintGrid text_keep_r = importedGrid("text_keep_r"); - public PaintGrid text_clear_r = importedGrid("text_clear_r"); - public PaintGrid text_turn_r = importedGrid("text_turn_r"); - public PaintGrid text_left_r = importedGrid("text_left_r"); - public PaintGrid text_right_r = importedGrid("text_right_r"); - public PaintGrid text_only_r = importedGrid("text_only_r"); - public PaintGrid text_no_r = importedGrid("text_no_r"); - public PaintGrid text_entry_r = importedGrid("text_entry_r"); - public PaintGrid text_bike_icon_r = importedGrid("text_bike_icon_r"); - public PaintGrid text_town_r = importedGrid("text_town_r"); - public PaintGrid text_city_r = importedGrid("text_city_r"); - public PaintGrid text_ctre_r = importedGrid("text_ctre_r"); - - public PaintGrid junction_side_line_connection_a = importedGrid("junction_side_line_connection_a"); - public PaintGrid junction_side_line_connection_b = importedGrid("junction_side_line_connection_b"); - public PaintGrid junction_side_line_connection_c = importedGrid("junction_side_line_connection_c"); - public PaintGrid junction_side_line_connection_d = importedGrid("junction_side_line_connection_d"); - - public PaintGrid junction_side_line_connection_thin_a = importedGrid("junction_side_line_connection_thin_a"); - public PaintGrid junction_side_line_connection_thin_b = importedGrid("junction_side_line_connection_thin_b"); - public PaintGrid junction_side_line_connection_thin_c = importedGrid("junction_side_line_connection_thin_c"); - public PaintGrid junction_side_line_connection_thin_d = importedGrid("junction_side_line_connection_thin_d"); - - public PaintGrid junction_side_line_connection_thick_thick_a = importedGrid("junction_side_line_connection_thick_thick_a"); - public PaintGrid junction_side_line_connection_thick_thick_b = importedGrid("junction_side_line_connection_thick_thick_b"); - public PaintGrid junction_side_line_connection_thick_thick_c = importedGrid("junction_side_line_connection_thick_thick_c"); - public PaintGrid junction_side_line_connection_thick_thick_d = importedGrid("junction_side_line_connection_thick_thick_d"); - - public PaintGrid junction_mid_line_connection_a = importedGrid("junction_mid_line_connection_a"); - public PaintGrid junction_mid_line_connection_b = importedGrid("junction_mid_line_connection_b"); - public PaintGrid junction_mid_line_connection_c = importedGrid("junction_mid_line_connection_c"); - public PaintGrid junction_mid_line_connection_d = importedGrid("junction_mid_line_connection_d"); - - private static boolean compiledSystem = false; - - public CustomPaintModelRegistry() {} - - public static void register(FMLPreInitializationEvent event) { - FurenikusRoads.debug(0, "Starting to load internal paint files"); - jsonList = getJsonFiles(event.getModMetadata().getClass().getResource("/assets/" + FurenikusRoads.MODID + "/paints").getFile(), jsonList); - - if (jsonList.size() > 0) { - FurenikusRoads.debug(0, "Found " + jsonList.size() + " internal paint files. Loading..."); - } else { - FurenikusRoads.debug(0, "No internal paint files found; this is a major bug! There will be missing assets in-game."); - } - } - - private static ArrayList getJsonFiles(String dir, ArrayList jsonList) { - File directory = new File(dir); - File[] files = directory.listFiles(); - - //Above only works in dev environment; for compiled .jar we need to handle differently. - if (files == null) { - FurenikusRoads.debug(0, "Running in production environment; switching to jarfile extraction for internal paint JSONs"); - return getCompiledJsonFiles(jsonList); - } - - if (files.length > 0) { - for (File file : files) { - if (file != null) { - if (file.isFile()) { - jsonList.add(file); - } else if (file.isDirectory()) { - getJsonFiles(file.getAbsolutePath(), jsonList); - } - } - } - } - - return jsonList; - } - - private static ArrayList getCompiledJsonFiles(ArrayList foundFiles) { - compiledSystem = true; - try { - URL jarUrl = FurenikusRoads.class.getProtectionDomain().getCodeSource().getLocation(); - JarURLConnection jarConnection = (JarURLConnection)jarUrl.openConnection(); - JarFile jar = jarConnection.getJarFile(); - Enumeration entries = jar.entries(); - - int entryCount = 0; - - while (entries.hasMoreElements()) { - entryCount++; - JarEntry entry = entries.nextElement(); - - if (!entry.isDirectory() && entry.getName().startsWith("assets/" + FurenikusRoads.MODID + "/paints")) { - File file = new File(entry.getName()); - if (file.getName().endsWith(".json")) { - foundFiles.add(file); - } - } - } - } catch (IOException e) { - throw new RuntimeException(e); - } - return foundFiles; - } - - private File getFileForPaint(String name) { - for (int i = 0; i < jsonList.size(); i++) { - if (jsonList.get(i).getName().endsWith(name + ".json")) { - return jsonList.get(i); - } - } - return null; - } - - private PaintGrid importedGrid(String name) { - File file = getFileForPaint(name); - if (file != null) { - JsonParser parser = new JsonParser(); - - try { - JsonObject json = null; - if (CustomPaintModelRegistry.compiledSystem) { - json = (JsonObject) parser.parse(readFileInJar(file.getName())); - } else { - json = (JsonObject) parser.parse(new FileReader(file)); - } - - JsonArray grid = json.has("grid") ? json.get("grid").getAsJsonArray() : null; - - if (grid != null) { - if (!(grid.size() == 16 || grid.size() == 32 || grid.size() == 64)) { - JsonArray gridRow = grid.get(0).getAsJsonArray(); - FurenikusRoads.debug(0, "#INTERNAL# Paint JSON file " + name + " has malformed Y axis grid. Make sure there are exactly 16, 32 or 64 entries; it has " + grid.size() + " with X: " + gridRow.size()); - return null; - } - boolean[][] gridArray = new boolean[grid.size()][grid.size()]; - - for (int i = 0; i < grid.size(); i++) { - JsonArray gridRow = grid.get(i).getAsJsonArray(); - if (gridRow.size() != grid.size()) { - FurenikusRoads.debug(0, "#INTERNAL# Paint JSON file " + name + " has malformed X axis grid. Make sure there are exactly " + grid.size() + " entries; it has " + gridRow.size()); - return null; - } - for (int j = 0; j < gridRow.size(); j++) { - char c = gridRow.get(j).getAsCharacter(); - if (c == ' ' || c == '0') { - gridArray[j][i] = false; - } else { - gridArray[j][i] = true; - } - } - } - - return new PaintGrid(gridArray); - } - - } catch (Exception e) { - e.printStackTrace(); - } - } else { - FurenikusRoads.debug(0, "Internal paint file for " + name + " was null! This will crash when placing!!"); - } - return null; - } - - private static String readFileInJar(String fileName) throws IOException { - StringBuilder sb = new StringBuilder(); - fileName = "assets/furenikusroads/paints/" + fileName; - URL jarUrl = FurenikusRoads.class.getProtectionDomain().getCodeSource().getLocation(); - JarURLConnection jarConnection = (JarURLConnection)jarUrl.openConnection(); - JarFile jar = jarConnection.getJarFile(); - JarEntry entry = jar.getJarEntry(fileName); - - if (entry != null) { - InputStream inputStream = jar.getInputStream(entry); - BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream)); - String line; - while ((line = reader.readLine()) != null) { - sb.append(line); - } - reader.close(); - inputStream.close(); - } - jar.close(); - return sb.toString(); - } -} diff --git a/src/main/java/com/silvaniastudios/roads/registries/DynamicBlockRegistry.java b/src/main/java/com/silvaniastudios/roads/registries/DynamicBlockRegistry.java deleted file mode 100644 index ebd66ba7..00000000 --- a/src/main/java/com/silvaniastudios/roads/registries/DynamicBlockRegistry.java +++ /dev/null @@ -1,174 +0,0 @@ -package com.silvaniastudios.roads.registries; - -import java.io.File; -import java.io.FileReader; -import java.util.ArrayList; -import java.util.logging.Level; -import java.util.logging.Logger; - -import com.google.gson.JsonArray; -import com.google.gson.JsonObject; -import com.google.gson.JsonParser; -import com.silvaniastudios.roads.FurenikusRoads; -import com.silvaniastudios.roads.RoadsConfig; -import com.silvaniastudios.roads.blocks.FRBlocks; -import com.silvaniastudios.roads.blocks.PaintColour; -import com.silvaniastudios.roads.blocks.paint.LargeTextPaintBlock; -import com.silvaniastudios.roads.blocks.paint.customs.*; -import com.silvaniastudios.roads.blocks.paint.properties.PaintGrid; - -public class DynamicBlockRegistry { - - public static ArrayList customPaints = new ArrayList<>(); - - private static ArrayList jsonList = new ArrayList(); - - public static void register() { - FurenikusRoads.debug(0, "Starting to load custom paint files"); - jsonList = getJsonFiles("./mods/RoadPaints/", jsonList); - - if (jsonList.size() > 0) { - FurenikusRoads.debug(0, "Found " + jsonList.size() + " custom paint files. Loading..."); - int success = 0; - - for (int a = 0; a < FRBlocks.col.size(); a++) { - success += registerColour(FRBlocks.col.get(a)); - } - - FurenikusRoads.debug(0, "Custom paint files loading complete, " + success + "/" + jsonList.size()*FRBlocks.col.size() + " (with " + FRBlocks.col.size() + " internal colour variants) files loaded successfully."); - } else { - FurenikusRoads.debug(0, "No custom paint files found; skipping custom paint loading."); - } - System.out.println("Final: " + customPaints.size()); - } - - public static int registerColour(PaintColour col) { - int success = 0; - for (int i = 0; i < jsonList.size(); i++) { - CustomPaintBlock block = importedBlock(jsonList.get(i), col); - if (block != null) { - customPaints.add(block); - success++; - } else { - FurenikusRoads.debug(0, jsonList.get(i).getName() + " failed to load. Skipping..."); - } - } - - return success; - } - - private static ArrayList getJsonFiles(String dir, ArrayList jsonList) { - File directory = new File(dir); - - if (!directory.exists()) { - FurenikusRoads.debug(0, "Custom paint directory is missing; creating..."); - boolean success = directory.mkdir(); - if (!success && !RoadsConfig.general.skipCustomPaints) { - FurenikusRoads.debug(0, "Unable to create custom paint directory! Is your filesystem locked?"); - FurenikusRoads.debug(0, "If you do not need custom paints, you can turn them off in the config."); - FurenikusRoads.debug(0, "Alternatively, manually create a folder called RoadPaints in your mod directory."); - throw new RuntimeException("Failed to create custom paint directory! See latest.log for details."); - } - } - - File[] files = directory.listFiles(); - - for (File file : files) { - if (file.isFile()) { - jsonList.add(file); - } else if (file.isDirectory()) { - getJsonFiles(file.getAbsolutePath(), jsonList); - } - } - - return jsonList; - } - - private static CustomPaintBlock importedBlock(File file, PaintColour col) { - JsonParser parser = new JsonParser(); - CustomPaintBlock block = null; - - try { - JsonObject json = (JsonObject) parser.parse(new FileReader(file)); - - String name = json.has("blockName") ? json.get("blockName").getAsString() : file.getName(); - String localName = json.has("localName") ? json.get("localName").getAsString() : "NAME_READ_FAILED"; - String category = json.has("category") ? json.get("category").getAsString() : "line"; - String type = json.has("type") ? json.get("type").getAsString() : "1x1"; - boolean horizontal = json.has("horizontal") ? json.get("horizontal").getAsBoolean() : true; - JsonArray grid = json.has("grid") ? json.get("grid").getAsJsonArray() : null; - JsonArray grid_b = json.has("grid_b") ? json.get("grid_b").getAsJsonArray() : null; - JsonArray grid_c = json.has("grid_c") ? json.get("grid_c").getAsJsonArray() : null; - JsonArray grid_d = json.has("grid_d") ? json.get("grid_d").getAsJsonArray() : null; - //type - - for (int i = 0; i < FRBlocks.col.size(); i++) { - if (name.toLowerCase().contains(FRBlocks.col.get(i).getName())) { - FurenikusRoads.debug(0, "Paint JSON file " + name + " contains illegal word. Please don't use \"" + FRBlocks.col.get(i).getName() + "\" anywhere in your paint name."); - } - } - - if (grid != null) { - PaintGrid gridArray_a = new PaintGrid(getGridArray(grid, name)); - PaintGrid gridArray_b = grid_b != null ? new PaintGrid(getGridArray(grid_b, name)) : PaintGrid.EMPTY; - PaintGrid gridArray_c = grid_c != null ? new PaintGrid(getGridArray(grid_c, name)) : PaintGrid.EMPTY; - PaintGrid gridArray_d = grid_d != null ? new PaintGrid(getGridArray(grid_d, name)) : PaintGrid.EMPTY; - - - CustomPaintBlock.EnumPaintType paintType = CustomPaintBlock.EnumPaintType.getFromString(type); - - switch (paintType) { - case ICON_1x1: - block = new CustomPaintBlock(name + "_" + col.getName(), localName, paintType, new PaintGrid[] {gridArray_a}, category, new int[] {0}, col); - break; - case WALL_ICON_1x1: - block = new CustomPaintWallBlock(name + "_" + col.getName(), localName, new PaintGrid[] {gridArray_a}, category, new int[] {0}, col); - break; - case MULTI_2x1: - block = new Custom1x2PaintBlock(name + "_" + col.getName(), localName, new PaintGrid[]{gridArray_a, gridArray_b}, category, col, horizontal); - break; - case MULTI_3x1: - block = new Custom1x3PaintBlock(name + "_" + col.getName(), localName, new PaintGrid[]{gridArray_a, gridArray_b, gridArray_c}, category, col, horizontal); - break; - case MULTI_4x1: - block = new Custom1x4PaintBlock(name + "_" + col.getName(), localName, new PaintGrid[]{gridArray_a, gridArray_b, gridArray_c, gridArray_d}, category, col, horizontal); - break; - case LARGE_TEXT: - block = new LargeTextPaintBlock(name + "_" + col.getName(), localName, new PaintGrid[]{gridArray_a, gridArray_b, gridArray_c, gridArray_d}, category, col); - break; - } - } - - } catch (Exception e) { - e.printStackTrace(); - } - - return block; - } - - private static boolean[][] getGridArray(JsonArray grid, String name) { - if (!(grid.size() == 16 || grid.size() == 32 || grid.size() == 64)) { - FurenikusRoads.debug(0, "Paint JSON file " + name + " has malformed Y axis grid. Make sure there are exactly 16, 32 or 64 entries; it has " + grid.size()); - return null; - } - - boolean[][] gridArray = new boolean[grid.size()][grid.size()]; - - for (int i = 0; i < grid.size(); i++) { - JsonArray gridRow = grid.get(i).getAsJsonArray(); - if (gridRow.size() != grid.size()) { - FurenikusRoads.debug(0, "Paint JSON file " + name + " has malformed X axis grid. Make sure there are exactly " + grid.size() + " entries; it has " + gridRow.size()); - return null; - } - for (int j = 0; j < gridRow.size(); j++) { - char c = gridRow.get(j).getAsCharacter(); - if (c == ' ' || c == '0') { - gridArray[j][i] = false; - } else { - gridArray[j][i] = true; - } - } - } - return gridArray; - } -} diff --git a/src/main/java/com/silvaniastudios/roads/registries/PaintCategoryList.java b/src/main/java/com/silvaniastudios/roads/registries/PaintCategoryList.java deleted file mode 100644 index 9eda68ce..00000000 --- a/src/main/java/com/silvaniastudios/roads/registries/PaintCategoryList.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.silvaniastudios.roads.registries; - -import java.util.ArrayList; - -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; - -public class PaintCategoryList { - - private ArrayList paints = new ArrayList(); - private ArrayList metas = new ArrayList(); - private ArrayList indices = new ArrayList(); - String name; - - public PaintCategoryList(String name) { - this.name = name; - } - - public String getCategoryName() { - return name; - } - - public void add(PaintBlockBase paint, int meta, int index) { - paints.add(paint); - metas.add(meta); - indices.add(index); - } - - public void add(PaintBlockBase paint) { - paints.add(paint); - metas.add(0); - indices.add(0); - } - - public int size() { - return paints.size(); - } - - public PaintBlockBase getPaint(int i) { - return paints.get(i); - } - - public int getMeta(int i) { - return metas.get(i); - } - - public ArrayList getWhitePaints() { - ArrayList whites = new ArrayList(); - - for (int i = 0; i < paints.size(); i++) { - if (paints.get(i).getUnlocalizedName().contains("white")) { - PaintIconObject pio = new PaintIconObject(paints.get(i), metas.get(i), indices.get(i)); - - whites.add(pio); - } - } - - return whites; - } - -} diff --git a/src/main/java/com/silvaniastudios/roads/registries/PaintGunItemRegistry.java b/src/main/java/com/silvaniastudios/roads/registries/PaintGunItemRegistry.java deleted file mode 100644 index c92d6138..00000000 --- a/src/main/java/com/silvaniastudios/roads/registries/PaintGunItemRegistry.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.silvaniastudios.roads.registries; - -import java.util.ArrayList; - -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; -import net.minecraft.util.ResourceLocation; -import net.minecraftforge.fml.common.registry.ForgeRegistries; - -public class PaintGunItemRegistry { - - public static final String LINES = "lines"; - public static final String ICONS = "icons"; - public static final String LETTERS = "letters"; - public static final String TEXT = "text"; - public static final String JUNCTIONS = "junctions"; - - public static ArrayList categoryList = new ArrayList(); - - public static void init() { - PaintCategoryList lines = new PaintCategoryList(LINES); - PaintCategoryList icons = new PaintCategoryList(ICONS); - PaintCategoryList letters = new PaintCategoryList(LETTERS); - PaintCategoryList text = new PaintCategoryList(TEXT); - PaintCategoryList junctions = new PaintCategoryList(JUNCTIONS); - - categoryList.add(lines); - categoryList.add(icons); - categoryList.add(letters); - categoryList.add(text); - categoryList.add(junctions); - } - - public static PaintBlockBase getAlternativeColour(PaintBlockBase paintWhite, String col) { - ResourceLocation loc = new ResourceLocation(paintWhite.getRegistryName().toString().replace("white", col)); - if (ForgeRegistries.BLOCKS.containsKey(loc)) { - return (PaintBlockBase) ForgeRegistries.BLOCKS.getValue(loc); - } - return paintWhite; - } - - public static PaintBlockBase getSelectedPaint(int catId, int selectId) { - if (catId <= categoryList.size()) { - PaintCategoryList cat = categoryList.get(catId); - if (selectId <= cat.size()) { - return cat.getPaint(selectId); - } - } - - return null; - } - - public static int getSelectedPaintMeta(int catId, int selectId) { - if (catId <= categoryList.size()) { - PaintCategoryList cat = categoryList.get(catId); - if (selectId <= cat.size()) { - return cat.getMeta(selectId); - } - } - - return 0; - } - - public static PaintCategoryList getCategory(int catId) { - if (catId <= categoryList.size()) { - return categoryList.get(catId); - } - return null; - } - - public static void registerPaint(PaintBlockBase block, int meta, int index) { - String cat = block.getCategory(); - - - for (int i = 0; i < categoryList.size(); i++) { - if (categoryList.get(i).getCategoryName().equalsIgnoreCase(cat)) { - categoryList.get(i).add(block, meta, index); - return; - } - } - - //Category doesn't exist yet; create. - PaintCategoryList list = new PaintCategoryList(cat); - list.add(block, meta, index); - categoryList.add(list); - System.out.println("Creating category " + list.name + " for block " + block.getLocalizedName() + " and registering."); - - } -} diff --git a/src/main/java/com/silvaniastudios/roads/registries/PaintIconObject.java b/src/main/java/com/silvaniastudios/roads/registries/PaintIconObject.java deleted file mode 100644 index f65faa11..00000000 --- a/src/main/java/com/silvaniastudios/roads/registries/PaintIconObject.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.silvaniastudios.roads.registries; - -import com.silvaniastudios.roads.blocks.paint.PaintBlockBase; - -public class PaintIconObject { - - PaintBlockBase paint; - int meta; - int index; - - public PaintIconObject(PaintBlockBase paint, int meta, int index) { - this.paint = paint; - this.meta = meta; - this.index = index; - } - - public PaintBlockBase getPaint() { - return paint; - } - - public int getMeta() { - return meta; - } - - public int getIndex() { - return index; - } - - public PaintBlockBase getRecolouredPaint(String col) { - return PaintGunItemRegistry.getAlternativeColour(paint, col); - } - -} diff --git a/src/main/resources/META-INF/mods.toml b/src/main/resources/META-INF/mods.toml new file mode 100644 index 00000000..b0ad9f84 --- /dev/null +++ b/src/main/resources/META-INF/mods.toml @@ -0,0 +1,70 @@ +# This is an example mods.toml file. It contains the data relating to the loading mods. +# There are several mandatory fields (#mandatory), and many more that are optional (#optional). +# The overall format is standard TOML format, v0.5.0. +# Note that there are a couple of TOML lists in this file. +# Find more information on toml format here: https://github.com/toml-lang/toml +# The name of the mod loader type to load - for regular FML @Mod mods it should be javafml +modLoader="javafml" #mandatory +# A version range to match for said mod loader - for regular FML @Mod it will be the the FML version. This is currently 47. +loaderVersion="${loader_version_range}" #mandatory +# The license for you mod. This is mandatory metadata and allows for easier comprehension of your redistributive properties. +# Review your options at https://choosealicense.com/. All rights reserved is the default copyright stance, and is thus the default here. +license="${mod_license}" +# A URL to refer people to when problems occur with this mod +#issueTrackerURL="https://change.me.to.your.issue.tracker.example.invalid/" #optional +# A list of mods - how many allowed here is determined by the individual mod loader +[[mods]] #mandatory +# The modid of the mod +modId="${mod_id}" #mandatory +# The version number of the mod +version="${mod_version}" #mandatory +# A display name for the mod +displayName="${mod_name}" #mandatory +# A URL to query for updates for this mod. See the JSON update specification https://docs.neoforged.net/docs/misc/updatechecker/ +#updateJSONURL="https://change.me.example.invalid/updates.json" #optional +# A URL for the "homepage" for this mod, displayed in the mod UI +#displayURL="https://change.me.to.your.mods.homepage.example.invalid/" #optional +# A file name (in the root of the mod JAR) containing a logo for display +#logoFile="examplemod.png" #optional +# A text field displayed in the mod UI +#credits="" #optional +# A text field displayed in the mod UI +authors="${mod_authors}" #optional +# Display Test controls the display for your mod in the server connection screen +# MATCH_VERSION means that your mod will cause a red X if the versions on client and server differ. This is the default behaviour and should be what you choose if you have server and client elements to your mod. +# IGNORE_SERVER_VERSION means that your mod will not cause a red X if it's present on the server but not on the client. This is what you should use if you're a server only mod. +# IGNORE_ALL_VERSION means that your mod will not cause a red X if it's present on the client or the server. This is a special case and should only be used if your mod has no server component. +# NONE means that no display test is set on your mod. You need to do this yourself, see IExtensionPoint.DisplayTest for more information. You can define any scheme you wish with this value. +# IMPORTANT NOTE: this is NOT an instruction as to which environments (CLIENT or DEDICATED SERVER) your mod loads on. Your mod should load (and maybe do nothing!) whereever it finds itself. +#displayTest="MATCH_VERSION" # MATCH_VERSION is the default if nothing is specified (#optional) + +# The description text for the mod (multi line!) (#mandatory) +description='''${mod_description}''' +# A dependency - use the . to indicate dependency for a specific modid. Dependencies are optional. +[[dependencies.${mod_id}]] #optional + # the modid of the dependency + modId="neoforge" #mandatory + # Does this dependency have to exist - if not, ordering below must be specified + mandatory=true #mandatory + # The version range of the dependency + versionRange="${neo_version_range}" #mandatory + # An ordering relationship for the dependency - BEFORE or AFTER required if the dependency is not mandatory + # BEFORE - This mod is loaded BEFORE the dependency + # AFTER - This mod is loaded AFTER the dependency + ordering="NONE" + # Side this dependency is applied on - BOTH, CLIENT, or SERVER + side="BOTH" +# Here's another dependency +[[dependencies.${mod_id}]] + modId="minecraft" + mandatory=true + # This version range declares a minimum of the current minecraft version up to but not including the next major version + versionRange="${minecraft_version_range}" + ordering="NONE" + side="BOTH" + +# Features are specific properties of the game environment, that you may want to declare you require. This example declares +# that your mod requires GL version 3.2 or higher. Other features will be added. They are side aware so declaring this won't +# stop your mod loading on the server for example. +#[features.${mod_id}] +#openGLVersion="[3.2,)" diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge.json deleted file mode 100644 index d766a421..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge.json +++ /dev/null @@ -1,115 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_inventory" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_post", "y": 90 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_no_post" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 90 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_l": { "model": "furenikusroads:barrier_bars_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_r": { "model": "furenikusroads:barrier_bars_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_2.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_2.json deleted file mode 100644 index 4e632b16..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_2.json +++ /dev/null @@ -1,115 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_2_inventory" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_post", "y": 90 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_no_post_2" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_no_post_2", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_no_post_2", "y": 90 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner_2" }, - "main": { "model": "furenikusroads:barrier_bars_edge_2" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner_2" }, - "main": { "model": "furenikusroads:barrier_bars_edge_2" }, - "side_l": { "model": "furenikusroads:barrier_bars_edge_2", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 270 } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner_2" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge_2" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge_2" }, - "side_r": { "model": "furenikusroads:barrier_bars_edge_2", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 180 } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_3.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_3.json deleted file mode 100644 index f33c6815..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_3.json +++ /dev/null @@ -1,115 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_3_inventory" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_post", "y": 90 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_no_post_3" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_no_post_3", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_no_post_3", "y": 90 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner_3" }, - "main": { "model": "furenikusroads:barrier_bars_edge_3" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner_3" }, - "main": { "model": "furenikusroads:barrier_bars_edge_3" }, - "side_l": { "model": "furenikusroads:barrier_bars_edge_3", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 270 } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner_3" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge_3" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge_3" }, - "side_r": { "model": "furenikusroads:barrier_bars_edge_3", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 180 } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_1.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_1.json deleted file mode 100644 index 373e4016..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_1.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_inventory" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { - "model": "furenikusroads:barrier_wall_edge_post", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "post_l": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 270, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "post_r": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 90 , - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_no_post" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 90 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_l": { "model": "furenikusroads:barrier_bars_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_r": { "model": "furenikusroads:barrier_bars_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_1_double.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_1_double.json deleted file mode 100644 index 68a70c48..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_1_double.json +++ /dev/null @@ -1,161 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_inventory_double" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { - "model": "furenikusroads:barrier_wall_edge_post", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "post_l": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 270, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "post_r": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 90, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "post_back": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 180, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "back": { "model": "furenikusroads:barrier_bars_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_no_post" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 90 }, - "post_back": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 180 }, - "back": { "model": "furenikusroads:barrier_bars_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_l": { "model": "furenikusroads:barrier_bars_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 }, - "back_l": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_r": { "model": "furenikusroads:barrier_bars_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_2.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_2.json deleted file mode 100644 index ea62d874..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_2.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_inventory" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { - "model": "furenikusroads:barrier_wall_edge_post", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "post_l": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 270, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "post_r": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 90 , - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_no_post" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 90 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_l": { "model": "furenikusroads:barrier_bars_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_r": { "model": "furenikusroads:barrier_bars_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_2_double.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_2_double.json deleted file mode 100644 index dee1b2b2..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_concrete_2_double.json +++ /dev/null @@ -1,161 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_inventory_double" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { - "model": "furenikusroads:barrier_wall_edge_post", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "post_l": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 270, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "post_r": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 90, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "post_back": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 180, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "back": { "model": "furenikusroads:barrier_bars_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_no_post" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 90 }, - "post_back": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 180 }, - "back": { "model": "furenikusroads:barrier_bars_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_l": { "model": "furenikusroads:barrier_bars_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 }, - "back_l": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_r": { "model": "furenikusroads:barrier_bars_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_double.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_double.json deleted file mode 100644 index 76751c5c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_double.json +++ /dev/null @@ -1,141 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_inventory_double" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_post", "y": 90 }, - "post_back": { "model": "furenikusroads:barrier_bars_edge_post", "y": 180 }, - "back": { "model": "furenikusroads:barrier_bars_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_no_post" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 90 }, - "post_back": { "model": "furenikusroads:barrier_bars_edge_no_post", "y": 180 }, - "back": { "model": "furenikusroads:barrier_bars_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_l": { "model": "furenikusroads:barrier_bars_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 }, - "back_l": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge" }, - "side_r": { "model": "furenikusroads:barrier_bars_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 180 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 270 }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_double_2.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_double_2.json deleted file mode 100644 index 86d1bd88..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_double_2.json +++ /dev/null @@ -1,141 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_2_inventory_double" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_post", "y": 90 }, - "post_back": { "model": "furenikusroads:barrier_bars_edge_post", "y": 180 }, - "back": { "model": "furenikusroads:barrier_bars_edge_2", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 270 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_no_post_2" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_no_post_2", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_no_post_2", "y": 90 }, - "post_back": { "model": "furenikusroads:barrier_bars_edge_no_post_2", "y": 180 }, - "back": { "model": "furenikusroads:barrier_bars_edge_2", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 270 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner_2" }, - "main": { "model": "furenikusroads:barrier_bars_edge_2" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner_2" }, - "main": { "model": "furenikusroads:barrier_bars_edge_2" }, - "side_l": { "model": "furenikusroads:barrier_bars_edge_2", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 270 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 180 }, - "back_l": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner_2" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge_2" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge_2" }, - "side_r": { "model": "furenikusroads:barrier_bars_edge_2", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 180 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 270 }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner_2", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_double_3.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_double_3.json deleted file mode 100644 index 5e49954d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_edge_double_3.json +++ /dev/null @@ -1,141 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_3_inventory_double" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_post", "y": 90 }, - "post_back": { "model": "furenikusroads:barrier_bars_edge_post", "y": 180 }, - "back": { "model": "furenikusroads:barrier_bars_edge_3", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 270 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_bars_edge_no_post_3" }, - "post_l": { "model": "furenikusroads:barrier_bars_edge_no_post_3", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_bars_edge_no_post_3", "y": 90 }, - "post_back": { "model": "furenikusroads:barrier_bars_edge_no_post_3", "y": 180 }, - "back": { "model": "furenikusroads:barrier_bars_edge_3", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 270 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner_3" }, - "main": { "model": "furenikusroads:barrier_bars_edge_3" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner_3" }, - "main": { "model": "furenikusroads:barrier_bars_edge_3" }, - "side_l": { "model": "furenikusroads:barrier_bars_edge_3", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 270 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 180 }, - "back_l": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_bars_edge_corner_3" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge_3" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 90 }, - "main": { "model": "furenikusroads:barrier_bars_edge_3" }, - "side_r": { "model": "furenikusroads:barrier_bars_edge_3", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 180 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 270 }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_bars_edge_corner_3", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid.json deleted file mode 100644 index db762427..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_inventory" - }], - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_bars_n", "y": 90 } - } - }, - "false": { - } - }, - "post": { - "true": { - "submodel": { - "post": { "model": "furenikusroads:barrier_bars_mid", "y": 90 } - } - }, - "false": { - "submodel": { - "post": { "model": "furenikusroads:barrier_bars_mid_small" } - } - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_bars_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_bars_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_bars_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_2.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_2.json deleted file mode 100644 index 9b47c039..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_2.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_inventory" - }], - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_bars_2_n", "y": 90 } - } - }, - "false": { - } - }, - "post": { - "true": { - "submodel": { - "post": { "model": "furenikusroads:barrier_bars_mid", "y": 90 } - } - }, - "false": { - "submodel": { - "post": { "model": "furenikusroads:barrier_bars_mid_2_small" } - } - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_bars_2_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_bars_2_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_bars_2_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_3.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_3.json deleted file mode 100644 index d141c1a8..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_3.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_inventory" - }], - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_bars_3_n", "y": 90 } - } - }, - "false": { - } - }, - "post": { - "true": { - "submodel": { - "post": { "model": "furenikusroads:barrier_bars_mid", "y": 90 } - } - }, - "false": { - "submodel": { - "post": { "model": "furenikusroads:barrier_bars_mid_3_small" } - } - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_bars_3_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_bars_3_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_bars_3_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_concrete_1.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_concrete_1.json deleted file mode 100644 index 9b0fbbac..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_concrete_1.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_inventory" - }], - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_bars_n", "y": 90 } - } - }, - "false": { - } - }, - "post": { - "true": { - "submodel": { - "post": { - "model": "furenikusroads:barrier_wall_mid", "y": 90, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - } - } - }, - "false": { - "submodel": { - "post": { "model": "furenikusroads:barrier_bars_mid_small" } - } - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_bars_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_bars_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_bars_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_concrete_2.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_concrete_2.json deleted file mode 100644 index f7e6a208..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_bars_mid_concrete_2.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_bars_edge_inventory" - }], - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_bars_n", "y": 90 } - } - }, - "false": { - } - }, - "post": { - "true": { - "submodel": { - "post": { - "model": "furenikusroads:barrier_wall_mid", "y": 90, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - } - } - }, - "false": { - "submodel": { - "post": { "model": "furenikusroads:barrier_bars_mid_small" } - } - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_bars_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_bars_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_bars_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_1_mid.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_1_mid.json deleted file mode 100644 index 3e89774c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_1_mid.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1", - "particle": "furenikusroads:blocks/road_block_concrete_1" - }, - "model": "furenikusroads:barrier_concrete_middle" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_concrete_middle" - }], - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_concrete_middle_n", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_concrete_middle_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_concrete_middle_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_concrete_middle_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_2_mid.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_2_mid.json deleted file mode 100644 index a0c88f6a..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_2_mid.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2", - "particle": "furenikusroads:blocks/road_block_concrete_2" - }, - "model": "furenikusroads:barrier_concrete_middle" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_concrete_middle" - }], - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_concrete_middle_n", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_concrete_middle_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_concrete_middle_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_concrete_middle_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_edge_1.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_edge_1.json deleted file mode 100644 index d5f254ee..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_edge_1.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_tall_edge", - "uvlock": true, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1", - "particle": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_concrete_edge_inventory" - }], - "zpost": { - "true": {}, - "false": {} - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_concrete_edge" }, - "side_l": { "model": "furenikusroads:barrier_concrete_edge_left" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_concrete_edge" }, - "side_l": { "model": "furenikusroads:barrier_concrete_edge_left_down" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_concrete_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_concrete_edge" }, - "side_r": { "model": "furenikusroads:barrier_concrete_edge_right" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_concrete_edge" }, - "side_r": { "model": "furenikusroads:barrier_concrete_edge_right_down" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_concrete_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_edge_2.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_edge_2.json deleted file mode 100644 index 5395f0a3..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_concrete_edge_2.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_tall_edge", - "uvlock": true, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2", - "particle": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_concrete_edge_inventory" - }], - "zpost": { - "true": {}, - "false": {} - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_concrete_edge" }, - "side_l": { "model": "furenikusroads:barrier_concrete_edge_left" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_concrete_edge" }, - "side_l": { "model": "furenikusroads:barrier_concrete_edge_left_down" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_concrete_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_concrete_edge" }, - "side_r": { "model": "furenikusroads:barrier_concrete_edge_right" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_concrete_edge" }, - "side_r": { "model": "furenikusroads:barrier_concrete_edge_right_down" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_concrete_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_end.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_end.json deleted file mode 100644 index 7b6b6903..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_end.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "1": "furenikusroads:blocks/machine_hazard", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:barrier_standard_end" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_standard_middle_end" - }], - "meta": { - "0": { "model": "furenikusroads:barrier_standard_middle_end" }, - "1": { "model": "furenikusroads:barrier_standard_middle_end", "y": 90 }, - "2": { "model": "furenikusroads:barrier_standard_middle_end", "y": 180 }, - "3": { "model": "furenikusroads:barrier_standard_middle_end", "y": 270 }, - "4": { "model": "furenikusroads:nomodel" }, - "5": { "model": "furenikusroads:nomodel" }, - "6": { "model": "furenikusroads:nomodel" }, - "7": { "model": "furenikusroads:nomodel" }, - "8": { "model": "furenikusroads:nomodel" }, - "9": { "model": "furenikusroads:nomodel" }, - "10": { "model": "furenikusroads:nomodel" }, - "11": { "model": "furenikusroads:nomodel" }, - "12": { "model": "furenikusroads:nomodel" }, - "13": { "model": "furenikusroads:nomodel" }, - "14": { "model": "furenikusroads:nomodel" }, - "15": { "model": "furenikusroads:nomodel" } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_low_edge.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_low_edge.json deleted file mode 100644 index 6ac3fb82..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_low_edge.json +++ /dev/null @@ -1,111 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_tall_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_low_edge" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_low_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_low_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_low_edge_post", "y": 90 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_low_edge" }, - "side_l": { "model": "furenikusroads:barrier_low_edge_corner" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_low_edge_corner" }, - "main": { "model": "furenikusroads:barrier_low_edge" }, - "side_l": { "model": "furenikusroads:barrier_low_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_low_edge_corner", "y": 270 } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_low_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_low_edge" }, - "side_r": { "model": "furenikusroads:barrier_low_edge_corner", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_low_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_low_edge" }, - "side_r": { "model": "furenikusroads:barrier_low_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_low_edge_corner", "y": 180 } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_low_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_low_mid.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_low_mid.json deleted file mode 100644 index eb55be9a..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_low_mid.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:barrier_low_mid", - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_low_mid" - }], - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_low_mid_n", "y": 90 } - } - }, - "false": { - } - }, - "post": { - "true": { - "submodel": { - "post": { "model": "furenikusroads:barrier_low_mid_post" } - } - }, - "false": { - "submodel": { - "post": { "model": "furenikusroads:nomodel" } - } - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_low_mid_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_low_mid_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_low_mid_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_standard_edge.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_standard_edge.json deleted file mode 100644 index a67c130d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_standard_edge.json +++ /dev/null @@ -1,111 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_standard_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_standard_edge_inventory" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_standard_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_standard_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_standard_edge_post", "y": 90 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_standard_edge" }, - "side_l": { "model": "furenikusroads:barrier_standard_edge_l" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_standard_edge" }, - "side_l": { "model": "furenikusroads:barrier_standard_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_standard_edge_l", "y": 270 } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_standard_edge" }, - "side_r": { "model": "furenikusroads:barrier_standard_edge_r" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_standard_edge" }, - "side_r": { "model": "furenikusroads:barrier_standard_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_standard_edge_r", "y": 90 } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_standard_edge_double.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_standard_edge_double.json deleted file mode 100644 index 26e4193c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_standard_edge_double.json +++ /dev/null @@ -1,143 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_standard_edge_inventory_double" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_standard_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_standard_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_standard_edge_post", "y": 90 }, - "post_back": { "model": "furenikusroads:barrier_standard_edge_post", "y": 180 }, - "back": { "model": "furenikusroads:barrier_standard_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_standard_edge_l", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_standard_edge_r", "y": 180 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_standard_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_standard_edge_l", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_standard_edge_r", "y": 180 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_standard_edge" }, - "side_l": { "model": "furenikusroads:barrier_standard_edge_l" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_standard_edge" }, - "side_l": { "model": "furenikusroads:barrier_standard_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_standard_edge_l", "y": 270 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_l": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_standard_edge" }, - "side_r": { "model": "furenikusroads:barrier_standard_edge_r" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_tall_edge" }, - "side_r": { "model": "furenikusroads:barrier_tall_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_tall_edge_r", "y": 90 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_l": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_standard_mid.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_standard_mid.json deleted file mode 100644 index 5b0cfdf1..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_standard_mid.json +++ /dev/null @@ -1,82 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:barrier_standard_middle_inventory" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_standard_middle_inventory" - }], - "zz_default_stuff": { - "true": { - "model": "furenikusroads:nomodel", - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_standard_middle_connect_widget" }, - "connect_south": { "model": "furenikusroads:barrier_standard_middle_connect_widget", "y": 180 }, - "connect_east": { "model": "furenikusroads:barrier_standard_middle_connect_widget", "y": 90 }, - "connect_west": { "model": "furenikusroads:barrier_standard_middle_connect_widget", "y": 270 } - } - }, - "false": { - } - }, - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_standard_middle_connect_n", "y": 90 } - } - }, - "false": { - } - }, - "post": { - "east_west": { - "submodel": { - "post": { "model": "furenikusroads:barrier_standard_middle_post", "y": 90 } - } - }, - "north_south": { - "submodel": { - "post": { "model": "furenikusroads:barrier_standard_middle_post" } - } - }, - "none": { - "submodel": { - "post": { "model": "furenikusroads:nomodel" } - } - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_standard_middle_connect_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_standard_middle_connect_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_standard_middle_connect_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_tall_edge.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_tall_edge.json deleted file mode 100644 index 36b7c439..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_tall_edge.json +++ /dev/null @@ -1,111 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_tall_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_tall_edge_inventory" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_tall_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_tall_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_tall_edge_post", "y": 90 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_tall_edge" }, - "side_l": { "model": "furenikusroads:barrier_tall_edge_l" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_tall_edge" }, - "side_l": { "model": "furenikusroads:barrier_tall_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_tall_edge_l", "y": 270 } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_tall_edge" }, - "side_r": { "model": "furenikusroads:barrier_tall_edge_r" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_tall_edge" }, - "side_r": { "model": "furenikusroads:barrier_tall_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_tall_edge_r", "y": 90 } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_tall_edge_double.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_tall_edge_double.json deleted file mode 100644 index 37c36db8..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_tall_edge_double.json +++ /dev/null @@ -1,143 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_tall_edge_inventory_double" - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_tall_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_tall_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_tall_edge_post", "y": 90 }, - "post_back": { "model": "furenikusroads:barrier_tall_edge_post", "y": 180 }, - "back": { "model": "furenikusroads:barrier_tall_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_tall_edge_l", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_tall_edge_r", "y": 180 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_tall_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_tall_edge_l", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_tall_edge_r", "y": 180 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_tall_edge" }, - "side_l": { "model": "furenikusroads:barrier_tall_edge_l" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_tall_edge" }, - "side_l": { "model": "furenikusroads:barrier_tall_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_tall_edge_l", "y": 270 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_l": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_tall_edge" }, - "side_r": { "model": "furenikusroads:barrier_tall_edge_r" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:barrier_tall_edge" }, - "side_r": { "model": "furenikusroads:barrier_tall_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_tall_edge_r", "y": 90 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_l": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_tall_mid.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_tall_mid.json deleted file mode 100644 index c18e37d5..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_tall_mid.json +++ /dev/null @@ -1,82 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:barrier_tall_middle_inventory" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_standard_middle_inventory" - }], - "zz_default_stuff": { - "true": { - "model": "furenikusroads:nomodel", - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_tall_middle_connect_widget" }, - "connect_south": { "model": "furenikusroads:barrier_tall_middle_connect_widget", "y": 180 }, - "connect_east": { "model": "furenikusroads:barrier_tall_middle_connect_widget", "y": 90 }, - "connect_west": { "model": "furenikusroads:barrier_tall_middle_connect_widget", "y": 270 } - } - }, - "false": { - } - }, - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_tall_middle_connect_n", "y": 90 } - } - }, - "false": { - } - }, - "post": { - "east_west": { - "submodel": { - "post": { "model": "furenikusroads:barrier_standard_middle_post", "y": 90 } - } - }, - "north_south": { - "submodel": { - "post": { "model": "furenikusroads:barrier_standard_middle_post" } - } - }, - "none": { - "submodel": { - "post": { "model": "furenikusroads:nomodel" } - } - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_tall_middle_connect_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_tall_middle_connect_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_tall_middle_connect_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_1.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_1.json deleted file mode 100644 index 34ac8486..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_1.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1", - "particle": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_wall_inventory", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1", - "particle": "furenikusroads:blocks/road_block_concrete_1" - } - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_wall_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_wall_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_wall_edge_post", "y": 90 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_edge_corner" }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_edge_corner" }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_l": { "model": "furenikusroads:barrier_wall_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 270 } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_r": { "model": "furenikusroads:barrier_wall_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 180 } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_1_double.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_1_double.json deleted file mode 100644 index b451c9fd..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_1_double.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1", - "particle": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_wall_inventory_double", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_wall_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_wall_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_wall_edge_post", "y": 90 }, - "post_back": { "model": "furenikusroads:barrier_wall_edge_post", "y": 180 }, - "back": { "model": "furenikusroads:barrier_wall_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 270 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel", "y": 270 }, - "post_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "post_back": { "model": "furenikusroads:nomodel", "y": 180 }, - "back": { "model": "furenikusroads:barrier_wall_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 270 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_edge_corner" }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_edge_corner" }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_l": { "model": "furenikusroads:barrier_wall_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 270 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 180 }, - "back_l": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_r": { "model": "furenikusroads:barrier_wall_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 180 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 270 }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_2.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_2.json deleted file mode 100644 index d0b86f4c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_2.json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2", - "particle": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_wall_inventory", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2", - "particle": "furenikusroads:blocks/road_block_concrete_2" - } - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_wall_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_wall_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_wall_edge_post", "y": 90 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_edge_corner" }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_edge_corner" }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_l": { "model": "furenikusroads:barrier_wall_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 270 } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_r": { "model": "furenikusroads:barrier_wall_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 180 } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_2_double.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_2_double.json deleted file mode 100644 index 6a14dc65..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_edge_concrete_2_double.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2", - "particle": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_wall_inventory_double", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_wall_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_wall_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_wall_edge_post", "y": 90 }, - "post_back": { "model": "furenikusroads:barrier_wall_edge_post", "y": 180 }, - "back": { "model": "furenikusroads:barrier_wall_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 270 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel", "y": 270 }, - "post_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "post_back": { "model": "furenikusroads:nomodel", "y": 180 }, - "back": { "model": "furenikusroads:barrier_wall_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 270 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_edge_corner" }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_edge_corner" }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_l": { "model": "furenikusroads:barrier_wall_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 270 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 180 }, - "back_l": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:barrier_wall_edge" }, - "side_r": { "model": "furenikusroads:barrier_wall_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 180 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 270 }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_mid_concrete_1.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_mid_concrete_1.json deleted file mode 100644 index a778985e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_mid_concrete_1.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1", - "particle": "furenikusroads:blocks/road_block_concrete_1" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_wall_inventory" - }], - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_wall_n", "y": 90 } - } - }, - "false": { - } - }, - "post": { - "true": { - "submodel": { - "post": { "model": "furenikusroads:barrier_wall_mid", "y": 90 } - } - }, - "false": { - "submodel": { - "post": { "model": "furenikusroads:barrier_wall_mid_small" } - } - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_wall_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_wall_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_wall_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_mid_concrete_2.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_mid_concrete_2.json deleted file mode 100644 index f29a80ac..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_mid_concrete_2.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2", - "particle": "furenikusroads:blocks/road_block_concrete_2" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_wall_inventory" - }], - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_wall_n", "y": 90 } - } - }, - "false": { - } - }, - "post": { - "true": { - "submodel": { - "post": { "model": "furenikusroads:barrier_wall_mid", "y": 90 } - } - }, - "false": { - "submodel": { - "post": { "model": "furenikusroads:barrier_wall_mid_small" } - } - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_wall_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_wall_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_wall_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_1.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_1.json deleted file mode 100644 index f2422655..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_1.json +++ /dev/null @@ -1,119 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1", - "particle": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_wall_pole_edge_inventory", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_wall_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_wall_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_wall_edge_post", "y": 90 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_pole_edge_l" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_pole_edge_l_down" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_l": { "model": "furenikusroads:barrier_wall_pole_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_wall_pole_edge_l", "y": 270 } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_pole_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_pole_edge_r" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_pole_edge_r_down" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_r": { "model": "furenikusroads:barrier_wall_pole_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_wall_pole_edge_r", "y": 90 } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_pole_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_1_double.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_1_double.json deleted file mode 100644 index 31c9de4f..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_1_double.json +++ /dev/null @@ -1,155 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1", - "particle": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_wall_pole_edge_double_inventory", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }], - "zpost": { - "true": { - "submodel": { - "post_main": { - "model": "furenikusroads:barrier_wall_edge_post" - }, - "post_l": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 270 - }, - "post_r": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 90 - }, - "post_back": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 180 - }, - "back": { "model": "furenikusroads:barrier_wall_pole_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_wall_pole_edge_r", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_wall_pole_edge_l", "y": 180 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_wall_pole_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_wall_pole_edge_r", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_wall_pole_edge_l", "y": 180 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_pole_edge_l" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_pole_edge_l_down" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_l": { "model": "furenikusroads:barrier_wall_pole_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_wall_pole_edge_l", "y": 270 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_wall_pole_edge_corner", "y": 180 }, - "back_l": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_pole_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_pole_edge_r" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_pole_edge_r_down" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_r": { "model": "furenikusroads:barrier_wall_pole_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_wall_pole_edge_r", "y": 90 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_wall_pole_edge_corner", "y": 270 }, - "back_r": { "model": "furenikusroads:nomodel" }, - "back_l": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_pole_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_2.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_2.json deleted file mode 100644 index 990dbf44..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_2.json +++ /dev/null @@ -1,119 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2", - "particle": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_wall_pole_edge_inventory", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }], - "zpost": { - "true": { - "submodel": { - "post_main": { "model": "furenikusroads:barrier_wall_edge_post" }, - "post_l": { "model": "furenikusroads:barrier_wall_edge_post", "y": 270 }, - "post_r": { "model": "furenikusroads:barrier_wall_edge_post", "y": 90 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_pole_edge_l" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_pole_edge_l_down" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_l": { "model": "furenikusroads:barrier_wall_pole_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_wall_pole_edge_l", "y": 270 } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_pole_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_pole_edge_r" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_pole_edge_r_down" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_r": { "model": "furenikusroads:barrier_wall_pole_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_wall_pole_edge_r", "y": 90 } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_pole_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_2_double.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_2_double.json deleted file mode 100644 index b8957985..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_edge_concrete_2_double.json +++ /dev/null @@ -1,155 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "model": "furenikusroads:barrier_bars_edge", - "uvlock": true, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2", - "particle": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_wall_pole_edge_double_inventory", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }], - "zpost": { - "true": { - "submodel": { - "post_main": { - "model": "furenikusroads:barrier_wall_edge_post" - }, - "post_l": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 270 - }, - "post_r": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 90 - }, - "post_back": { - "model": "furenikusroads:barrier_wall_edge_post", "y": 180 - }, - "back": { "model": "furenikusroads:barrier_wall_pole_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_wall_pole_edge_r", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_wall_pole_edge_l", "y": 180 } - } - }, - "false": { - "submodel": { - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_wall_pole_edge", "y": 180 }, - "back_l": { "model": "furenikusroads:barrier_wall_pole_edge_r", "y": 180 }, - "back_r": { "model": "furenikusroads:barrier_wall_pole_edge_l", "y": 180 } - } - } - }, - "left": { - "normal": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_pole_edge_l" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_pole_edge_l_down" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_l": { "model": "furenikusroads:barrier_wall_pole_edge", "y": 270 }, - "side_end_l": { "model": "furenikusroads:barrier_wall_pole_edge_l", "y": 270 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_wall_pole_edge_corner", "y": 180 }, - "back_l": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_l": { "model": "furenikusroads:barrier_wall_pole_edge_corner" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_l": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "right": { - "normal": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_pole_edge_r" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel" }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" } - } - }, - "down": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_pole_edge_r_down" }, - "main": { "model": "furenikusroads:barrier_wall_pole_edge" }, - "side_r": { "model": "furenikusroads:barrier_wall_pole_edge", "y": 90 }, - "side_end_r": { "model": "furenikusroads:barrier_wall_pole_edge_r", "y": 90 }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:barrier_wall_pole_edge_corner", "y": 270 }, - "back_r": { "model": "furenikusroads:nomodel" }, - "back_l": { "model": "furenikusroads:nomodel" } - } - }, - "corner": { - "submodel": { - "corner_r": { "model": "furenikusroads:barrier_wall_pole_edge_corner", "y": 90 }, - "main": { "model": "furenikusroads:nomodel" }, - "side_r": { "model": "furenikusroads:nomodel", "y": 90 }, - "side_end_r": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - }, - "none": { - "submodel": { - "corner_l": { "model": "furenikusroads:nomodel" }, - "main": { "model": "furenikusroads:nomodel" }, - "side_l": { "model": "furenikusroads:nomodel" }, - "side_end_l": { "model": "furenikusroads:nomodel" }, - "post_main": { "model": "furenikusroads:nomodel" }, - "post_r": { "model": "furenikusroads:nomodel" }, - "post_back": { "model": "furenikusroads:nomodel" }, - "back": { "model": "furenikusroads:nomodel" }, - "back_r": { "model": "furenikusroads:nomodel" } - } - } - }, - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_mid_concrete_1.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_mid_concrete_1.json deleted file mode 100644 index 66fd1328..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_mid_concrete_1.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1", - "particle": "furenikusroads:blocks/road_block_concrete_1" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_wall_inventory" - }], - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_wall_pole_n", "y": 90 } - } - }, - "false": { - } - }, - "post": { - "true": { - "submodel": { - "post": { "model": "furenikusroads:barrier_wall_mid", "y": 90 } - } - }, - "false": { - "submodel": { - "post": { "model": "furenikusroads:barrier_wall_pole_mid_small" } - } - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_wall_pole_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_wall_pole_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_wall_pole_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_mid_concrete_2.json b/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_mid_concrete_2.json deleted file mode 100644 index f3ee4fd8..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/barrier_wall_pole_mid_concrete_2.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2", - "particle": "furenikusroads:blocks/road_block_concrete_2" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:barrier_wall_inventory" - }], - "east": { - "true": { - "submodel": { - "connect_east": { "model": "furenikusroads:barrier_wall_pole_n", "y": 90 } - } - }, - "false": { - } - }, - "post": { - "true": { - "submodel": { - "post": { "model": "furenikusroads:barrier_wall_mid", "y": 90 } - } - }, - "false": { - "submodel": { - "post": { "model": "furenikusroads:barrier_wall_pole_mid_small" } - } - } - }, - "north": { - "true": { - "submodel": { - "connect_north": { "model": "furenikusroads:barrier_wall_pole_n" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "connect_south": { "model": "furenikusroads:barrier_wall_pole_n", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "connect_west": { "model": "furenikusroads:barrier_wall_pole_n", "y": 270 } - } - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/bollard_1.json b/src/main/resources/assets/furenikusroads/blockstates/bollard_1.json deleted file mode 100644 index 6f9d0b6e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/bollard_1.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:bollard_traffic_1" - }, - "variants": { - "inventory_0": [{ - "model": "furenikusroads:bollard_traffic_1", - "textures": { - "1": "furenikusroads:blocks/traffic_bollard_left" - } - }], - "inventory_1": [{ - "model": "furenikusroads:bollard_traffic_1", - "textures": { - "1": "furenikusroads:blocks/traffic_bollard_right" - } - }], - "inventory_2": [{ - "model": "furenikusroads:bollard_traffic_2", - "textures": { - "1": "furenikusroads:blocks/traffic_bollard_left_2" - } - }], - "inventory_3": [{ - "model": "furenikusroads:bollard_traffic_2", - "textures": { - "1": "furenikusroads:blocks/traffic_bollard_right_2" - } - }], - "inventory_4": [{}], - "inventory_5": [{}], - "inventory_6": [{}], - "inventory_7": [{}], - "rotated": { - "true": { - "y": 90 - }, - "false": { - "y": 0 - } - }, - "type": { - "0": { - "model": "furenikusroads:bollard_traffic_1", - "textures": { - "1": "furenikusroads:blocks/traffic_bollard_left" - } - }, - "1": { - "model": "furenikusroads:bollard_traffic_1", - "textures": { - "1": "furenikusroads:blocks/traffic_bollard_right" - } - }, - "2": { - "model": "furenikusroads:bollard_traffic_2", - "textures": { - "1": "furenikusroads:blocks/traffic_bollard_left_2" - } - }, - "3": { - "model": "furenikusroads:bollard_traffic_2", - "textures": { - "1": "furenikusroads:blocks/traffic_bollard_right_2" - } - }, - "4": { - "model": "furenikusroads:bollard_traffic_2" - }, - "5": { - "model": "furenikusroads:bollard_traffic_2" - }, - "6": { - "model": "furenikusroads:bollard_traffic_2" - }, - "7": { - "model": "furenikusroads:bollard_traffic_2" - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/bollard_2.json b/src/main/resources/assets/furenikusroads/blockstates/bollard_2.json deleted file mode 100644 index e777558f..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/bollard_2.json +++ /dev/null @@ -1,110 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:bollard_concrete_1" - }, - "variants": { - "meta": { - "0": { - "model": "furenikusroads:bollard_concrete_1", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "1": { - "model": "furenikusroads:bollard_concrete_1", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "2": { - "model": "furenikusroads:bollard_smooth", - "textures": { - "0": "furenikusroads:blocks/bollard_smooth_metal", - "1": "furenikusroads:blocks/bollard_smooth_metal" - } - }, - "3": { - "model": "furenikusroads:bollard_smooth", - "textures": { - "0": "furenikusroads:blocks/bollard_striped", - "1": "furenikusroads:blocks/bollard_black" - } - }, - "4": { - "model": "furenikusroads:bollard_smooth", - "textures": { - "0": "furenikusroads:blocks/bollard_ringed", - "1": "furenikusroads:blocks/bollard_smooth_metal" - } - }, - "5": { - "model": "furenikusroads:bollard_smooth", - "textures": { - "0": "furenikusroads:blocks/bollard_yellow", - "1": "furenikusroads:blocks/bollard_yellow" - } - }, - "6": { - "model": "furenikusroads:bollard_smooth_small", - "textures": { - "0": "furenikusroads:blocks/bollard_smooth_metal", - "1": "furenikusroads:blocks/bollard_smooth_metal" - } - }, - "7": { - "model": "furenikusroads:bollard_smooth_small", - "textures": { - "0": "furenikusroads:blocks/bollard_striped", - "1": "furenikusroads:blocks/bollard_black" - } - }, - "8": { - "model": "furenikusroads:bollard_smooth_small", - "textures": { - "0": "furenikusroads:blocks/bollard_ringed", - "1": "furenikusroads:blocks/bollard_smooth_metal" - } - }, - "9": { - "model": "furenikusroads:bollard_smooth_small", - "textures": { - "0": "furenikusroads:blocks/bollard_yellow", - "1": "furenikusroads:blocks/bollard_yellow" - } - }, - - - "10": { - "model": "furenikusroads:bollard_topped" - }, - "11": { - "model": "furenikusroads:bollard_topped_ringed" - }, - "12": { - "model": "furenikusroads:bollard_smooth_light" - }, - "13": { - "model": "furenikusroads:bollard_smooth_light", - "textures": { - "0": "furenikusroads:blocks/bollard_black" - } - }, - "14": { - "model": "furenikusroads:bollard_portable", - "textures": { - "0": "furenikusroads:blocks/machine_metal_dark", - "1": "furenikusroads:blocks/bollard_small_portable" - } - }, - "15": { - "model": "furenikusroads:bollard_portable", - "textures": { - "0": "furenikusroads:blocks/machine_metal_dark", - "1": "furenikusroads:blocks/bollard_small_portable_yellow" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/bollard_3.json b/src/main/resources/assets/furenikusroads/blockstates/bollard_3.json deleted file mode 100644 index 01e0c43e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/bollard_3.json +++ /dev/null @@ -1,107 +0,0 @@ -{ - "forge_marker":1, - "defaults":{ - "transform":"forge:default-block", - "model":"furenikusroads:bollard_concrete_1" - }, - "variants":{ - "meta":{ - "0":{ - "model":"furenikusroads:bollard_stumpy", - "textures":{ - "0":"furenikusroads:blocks/bollard_smooth_metal" - } - }, - "1":{ - "model":"furenikusroads:bollard_stumpy_retracted", - "textures":{ - "0":"furenikusroads:blocks/bollard_smooth_metal" - } - }, - "2":{ - "model":"furenikusroads:bollard_stumpy", - "textures":{ - "0":"furenikusroads:blocks/bollard_black" - } - }, - "3":{ - "model":"furenikusroads:bollard_stumpy_retracted", - "textures":{ - "0":"furenikusroads:blocks/bollard_black" - } - }, - "4":{ - "model":"furenikusroads:bollard_thicc", - "textures":{ - "0":"furenikusroads:blocks/bollard_smooth_metal" - } - }, - "5":{ - "model":"furenikusroads:bollard_stumpy_retracted", - "textures":{ - "0":"furenikusroads:blocks/bollard_smooth_metal" - } - }, - "6":{ - "model":"furenikusroads:bollard_thicc", - "textures":{ - "0":"furenikusroads:blocks/bollard_black" - } - }, - "7":{ - "model":"furenikusroads:bollard_stumpy_retracted", - "textures":{ - "0":"furenikusroads:blocks/bollard_black" - } - }, - "8":{ - "model":"furenikusroads:bollard_smooth_retract_up", - "textures":{ - "0":"furenikusroads:blocks/bollard_smooth_metal" - } - }, - "9":{ - "model":"furenikusroads:bollard_smooth_retract_down", - "textures":{ - "0":"furenikusroads:blocks/bollard_smooth_metal" - } - }, - "10":{ - "model":"furenikusroads:bollard_smooth_retract_up", - "textures":{ - "0":"furenikusroads:blocks/bollard_ringed" - } - }, - "11":{ - "model":"furenikusroads:bollard_smooth_retract_down", - "textures":{ - "0":"furenikusroads:blocks/bollard_ringed" - } - }, - "12":{ - "model":"furenikusroads:bollard_smooth_small_retract_up", - "textures":{ - "0":"furenikusroads:blocks/bollard_smooth_metal" - } - }, - "13":{ - "model":"furenikusroads:bollard_smooth_small_retract_down", - "textures":{ - "0":"furenikusroads:blocks/bollard_smooth_metal" - } - }, - "14":{ - "model":"furenikusroads:bollard_smooth_small_retract_up", - "textures":{ - "0":"furenikusroads:blocks/bollard_ringed" - } - }, - "15":{ - "model":"furenikusroads:bollard_smooth_small_retract_down", - "textures":{ - "0":"furenikusroads:blocks/bollard_ringed" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/bollard_folding_black.json b/src/main/resources/assets/furenikusroads/blockstates/bollard_folding_black.json deleted file mode 100644 index 296810ed..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/bollard_folding_black.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:bollard_concrete_1", - "textures": { - "0": "furenikusroads:blocks/bollard_black" - } - }, - "variants": { - "meta": { - "0": { - "model": "furenikusroads:bollard_folding_1_upright" - }, - "1": { - "model": "furenikusroads:bollard_folding_1_upright", "y": 90 - }, - "2": { - "model": "furenikusroads:bollard_folding_1_upright", "y": 180 - }, - "3": { - "model": "furenikusroads:bollard_folding_1_upright", "y": 270 - }, - "4": { - "model": "furenikusroads:bollard_folding_1_down" - }, - "5": { - "model": "furenikusroads:bollard_folding_1_down", "y": 90 - }, - "6": { - "model": "furenikusroads:bollard_folding_1_down", "y": 180 - }, - "7": { - "model": "furenikusroads:bollard_folding_1_down", "y": 270 - }, - "8": { - "model": "furenikusroads:bollard_folding_2_upright" - }, - "9": { - "model": "furenikusroads:bollard_folding_2_upright", "y": 90 - }, - "10": { - "model": "furenikusroads:bollard_folding_2_upright", "y": 180 - }, - "11": { - "model": "furenikusroads:bollard_folding_2_upright", "y": 270 - }, - "12": { - "model": "furenikusroads:bollard_folding_2_down" - }, - "13": { - "model": "furenikusroads:bollard_folding_2_down", "y": 90 - }, - "14": { - "model": "furenikusroads:bollard_folding_2_down", "y": 180 - }, - "15": { - "model": "furenikusroads:bollard_folding_2_down", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/bollard_folding_smooth_metal.json b/src/main/resources/assets/furenikusroads/blockstates/bollard_folding_smooth_metal.json deleted file mode 100644 index b954df04..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/bollard_folding_smooth_metal.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:bollard_concrete_1", - "textures": { - "0": "furenikusroads:blocks/bollard_smooth_metal" - } - }, - "variants": { - "meta": { - "0": { - "model": "furenikusroads:bollard_folding_1_upright" - }, - "1": { - "model": "furenikusroads:bollard_folding_1_upright", "y": 90 - }, - "2": { - "model": "furenikusroads:bollard_folding_1_upright", "y": 180 - }, - "3": { - "model": "furenikusroads:bollard_folding_1_upright", "y": 270 - }, - "4": { - "model": "furenikusroads:bollard_folding_1_down" - }, - "5": { - "model": "furenikusroads:bollard_folding_1_down", "y": 90 - }, - "6": { - "model": "furenikusroads:bollard_folding_1_down", "y": 180 - }, - "7": { - "model": "furenikusroads:bollard_folding_1_down", "y": 270 - }, - "8": { - "model": "furenikusroads:bollard_folding_2_upright" - }, - "9": { - "model": "furenikusroads:bollard_folding_2_upright", "y": 90 - }, - "10": { - "model": "furenikusroads:bollard_folding_2_upright", "y": 180 - }, - "11": { - "model": "furenikusroads:bollard_folding_2_upright", "y": 270 - }, - "12": { - "model": "furenikusroads:bollard_folding_2_down" - }, - "13": { - "model": "furenikusroads:bollard_folding_2_down", "y": 90 - }, - "14": { - "model": "furenikusroads:bollard_folding_2_down", "y": 180 - }, - "15": { - "model": "furenikusroads:bollard_folding_2_down", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/bollard_folding_yellow.json b/src/main/resources/assets/furenikusroads/blockstates/bollard_folding_yellow.json deleted file mode 100644 index 407b690c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/bollard_folding_yellow.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:bollard_concrete_1", - "textures": { - "0": "furenikusroads:blocks/bollard_yellow" - } - }, - "variants": { - "meta": { - "0": { - "model": "furenikusroads:bollard_folding_1_upright" - }, - "1": { - "model": "furenikusroads:bollard_folding_1_upright", "y": 90 - }, - "2": { - "model": "furenikusroads:bollard_folding_1_upright", "y": 180 - }, - "3": { - "model": "furenikusroads:bollard_folding_1_upright", "y": 270 - }, - "4": { - "model": "furenikusroads:bollard_folding_1_down" - }, - "5": { - "model": "furenikusroads:bollard_folding_1_down", "y": 90 - }, - "6": { - "model": "furenikusroads:bollard_folding_1_down", "y": 180 - }, - "7": { - "model": "furenikusroads:bollard_folding_1_down", "y": 270 - }, - "8": { - "model": "furenikusroads:bollard_folding_2_upright" - }, - "9": { - "model": "furenikusroads:bollard_folding_2_upright", "y": 90 - }, - "10": { - "model": "furenikusroads:bollard_folding_2_upright", "y": 180 - }, - "11": { - "model": "furenikusroads:bollard_folding_2_upright", "y": 270 - }, - "12": { - "model": "furenikusroads:bollard_folding_2_down" - }, - "13": { - "model": "furenikusroads:bollard_folding_2_down", "y": 90 - }, - "14": { - "model": "furenikusroads:bollard_folding_2_down", "y": 180 - }, - "15": { - "model": "furenikusroads:bollard_folding_2_down", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_blue.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_blue.json deleted file mode 100644 index 40f0dcd5..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_blue.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_blue_e", - "right": "furenikusroads:blocks/cats_eye_blue_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye", - "transform": { - "thirdperson_righthand": { - "translation": [0, 8, 1.25] - }, - "thirdperson_lefthand": { - "translation": [0, 8, 1.25] - }, - "firstperson_righthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "firstperson_lefthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "ground": { - "translation": [0, 12.25, 0.25], - "scale": [2, 2, 2] - }, - "gui": { - "rotation": [15, 45, 0], - "translation": [0, 30, 0], - "scale": [4, 4, 4] - }, - "fixed": { - "rotation": [-90, 90, 0], - "translation": [0, 0, -31.75], - "scale": [4, 4, 4] - } - } - }], - "eye_type": { - "floor_ns": { - "model": "furenikusroads:cats_eye", "y": 90 - }, - "floor_ew": { - "model": "furenikusroads:cats_eye" - }, - "wall_north": { - "model": "furenikusroads:cats_eye", "x": 90 - }, - "wall_east": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90 - }, - "wall_south": { - "model": "furenikusroads:cats_eye", "x": 270 - }, - "wall_west": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90 - }, - "roof_ns": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 90 - }, - "roof_ew": { - "model": "furenikusroads:cats_eye", "x": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_blue_double.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_blue_double.json deleted file mode 100644 index fa78694a..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_blue_double.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_blue_e", - "right": "furenikusroads:blocks/cats_eye_blue_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye_double" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye_double" - }], - "eye_type": { - "floor_ns": { - "model": "furenikusroads:cats_eye_double", "y": 90 - }, - "floor_ew": { - "model": "furenikusroads:cats_eye_double" - }, - "wall_north": { - "model": "furenikusroads:cats_eye_double", "x": 90 - }, - "wall_east": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90 - }, - "wall_south": { - "model": "furenikusroads:cats_eye_double", "x": 270 - }, - "wall_west": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90 - }, - "roof_ns": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 90 - }, - "roof_ew": { - "model": "furenikusroads:cats_eye_double", "x": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_green.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_green.json deleted file mode 100644 index f5f022a4..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_green.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_green_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye", - "transform": { - "thirdperson_righthand": { - "translation": [0, 8, 1.25] - }, - "thirdperson_lefthand": { - "translation": [0, 8, 1.25] - }, - "firstperson_righthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "firstperson_lefthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "ground": { - "translation": [0, 12.25, 0.25], - "scale": [2, 2, 2] - }, - "gui": { - "rotation": [15, 45, 0], - "translation": [0, 30, 0], - "scale": [4, 4, 4] - }, - "fixed": { - "rotation": [-90, 90, 0], - "translation": [0, 0, -31.75], - "scale": [4, 4, 4] - } - } - }], - "eye_type": { - "floor_ns": { - "model": "furenikusroads:cats_eye", "y": 90 - }, - "floor_ew": { - "model": "furenikusroads:cats_eye" - }, - "wall_north": { - "model": "furenikusroads:cats_eye", "x": 90 - }, - "wall_east": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90 - }, - "wall_south": { - "model": "furenikusroads:cats_eye", "x": 270 - }, - "wall_west": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90 - }, - "roof_ns": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 90 - }, - "roof_ew": { - "model": "furenikusroads:cats_eye", "x": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_green_double.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_green_double.json deleted file mode 100644 index d194d9fb..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_green_double.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_green_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye_double" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye_double" - }], - "eye_type": { - "floor_ns": { - "model": "furenikusroads:cats_eye_double", "y": 90 - }, - "floor_ew": { - "model": "furenikusroads:cats_eye_double" - }, - "wall_north": { - "model": "furenikusroads:cats_eye_double", "x": 90 - }, - "wall_east": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90 - }, - "wall_south": { - "model": "furenikusroads:cats_eye_double", "x": 270 - }, - "wall_west": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90 - }, - "roof_ns": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 90 - }, - "roof_ew": { - "model": "furenikusroads:cats_eye_double", "x": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_red.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_red.json deleted file mode 100644 index 5ef3a7c3..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_red.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_red_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye", - "transform": { - "thirdperson_righthand": { - "translation": [0, 8, 1.25] - }, - "thirdperson_lefthand": { - "translation": [0, 8, 1.25] - }, - "firstperson_righthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "firstperson_lefthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "ground": { - "translation": [0, 12.25, 0.25], - "scale": [2, 2, 2] - }, - "gui": { - "rotation": [15, 45, 0], - "translation": [0, 30, 0], - "scale": [4, 4, 4] - }, - "fixed": { - "rotation": [-90, 90, 0], - "translation": [0, 0, -31.75], - "scale": [4, 4, 4] - } - } - }], - "eye_type": { - "floor_ns": { - "model": "furenikusroads:cats_eye", "y": 90 - }, - "floor_ew": { - "model": "furenikusroads:cats_eye" - }, - "wall_north": { - "model": "furenikusroads:cats_eye", "x": 90 - }, - "wall_east": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90 - }, - "wall_south": { - "model": "furenikusroads:cats_eye", "x": 270 - }, - "wall_west": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90 - }, - "roof_ns": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 90 - }, - "roof_ew": { - "model": "furenikusroads:cats_eye", "x": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_red_double.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_red_double.json deleted file mode 100644 index ce54965c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_red_double.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_red_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye_double" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye_double" - }], - "eye_type": { - "floor_ns": { - "model": "furenikusroads:cats_eye_double", "y": 90 - }, - "floor_ew": { - "model": "furenikusroads:cats_eye_double" - }, - "wall_north": { - "model": "furenikusroads:cats_eye_double", "x": 90 - }, - "wall_east": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90 - }, - "wall_south": { - "model": "furenikusroads:cats_eye_double", "x": 270 - }, - "wall_west": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90 - }, - "roof_ns": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 90 - }, - "roof_ew": { - "model": "furenikusroads:cats_eye_double", "x": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_red_green.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_red_green.json deleted file mode 100644 index 903de3d5..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_red_green.json +++ /dev/null @@ -1,113 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_green_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye", - "transform": { - "thirdperson_righthand": { - "translation": [0, 8, 1.25] - }, - "thirdperson_lefthand": { - "translation": [0, 8, 1.25] - }, - "firstperson_righthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "firstperson_lefthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "ground": { - "translation": [0, 12.25, 0.25], - "scale": [2, 2, 2] - }, - "gui": { - "rotation": [15, 45, 0], - "translation": [0, 30, 0], - "scale": [4, 4, 4] - }, - "fixed": { - "rotation": [-90, 90, 0], - "translation": [0, 0, -31.75], - "scale": [4, 4, 4] - } - } - }], - "eye_type": { - "floor_n": { - "model": "furenikusroads:cats_eye", "y": 90 - }, - "floor_e": { - "model": "furenikusroads:cats_eye" - }, - "floor_s": { - "model": "furenikusroads:cats_eye", "y": 270 - }, - "floor_w": { - "model": "furenikusroads:cats_eye", "y": 180 - }, - "wall_north_rg": { - "model": "furenikusroads:cats_eye", "x": 90 - }, - "wall_east_rg": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90 - }, - "wall_south_rg": { - "model": "furenikusroads:cats_eye", "x": 270 - }, - "wall_west_rg": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90 - }, - "wall_north_gr": { - "model": "furenikusroads:cats_eye", "x": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_red_e" - } - }, - "wall_east_gr": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_red_e" - } - }, - "wall_south_gr": { - "model": "furenikusroads:cats_eye", "x": 270, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_red_e" - } - }, - "wall_west_gr": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_red_e" - } - }, - "roof_n": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 90 - }, - "roof_e": { - "model": "furenikusroads:cats_eye", "x": 180 - }, - "roof_s": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 270 - }, - "roof_w": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_red_green_double.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_red_green_double.json deleted file mode 100644 index 66f6d697..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_red_green_double.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_green_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye_double" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye_double" - }], - "eye_type": { - "floor_n": { - "model": "furenikusroads:cats_eye_double", "y": 90 - }, - "floor_e": { - "model": "furenikusroads:cats_eye_double" - }, - "floor_s": { - "model": "furenikusroads:cats_eye_double", "y": 270 - }, - "floor_w": { - "model": "furenikusroads:cats_eye_double", "y": 180 - }, - "wall_north_rg": { - "model": "furenikusroads:cats_eye_double", "x": 90 - }, - "wall_east_rg": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90 - }, - "wall_south_rg": { - "model": "furenikusroads:cats_eye_double", "x": 270 - }, - "wall_west_rg": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90 - }, - "wall_north_gr": { - "model": "furenikusroads:cats_eye_double", "x": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_red_e" - } - }, - "wall_east_gr": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_red_e" - } - }, - "wall_south_gr": { - "model": "furenikusroads:cats_eye_double", "x": 270, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_red_e" - } - }, - "wall_west_gr": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_red_e" - } - }, - "roof_n": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 90 - }, - "roof_e": { - "model": "furenikusroads:cats_eye_double", "x": 180 - }, - "roof_s": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 270 - }, - "roof_w": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white.json deleted file mode 100644 index 859a37e0..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white.json +++ /dev/null @@ -1,76 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_white_e", - "right": "furenikusroads:blocks/cats_eye_white_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye", - "transform": { - "thirdperson_righthand": { - "translation": [0, 8, 1.25] - }, - "thirdperson_lefthand": { - "translation": [0, 8, 1.25] - }, - "firstperson_righthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "firstperson_lefthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "ground": { - "translation": [0, 12.25, 0.25], - "scale": [2, 2, 2] - }, - "gui": { - "rotation": [15, 45, 0], - "translation": [0, 30, 0], - "scale": [4, 4, 4] - }, - "fixed": { - "rotation": [-90, 90, 0], - "translation": [0, 0, -31.75], - "scale": [4, 4, 4] - } - } - }], - "normal": { - "model": "furenikusroads:cats_eye" - }, - "eye_type": { - "floor_ns": { - "model": "furenikusroads:cats_eye", "y": 90 - }, - "floor_ew": { - "model": "furenikusroads:cats_eye" - }, - "wall_north": { - "model": "furenikusroads:cats_eye", "x": 90 - }, - "wall_east": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90 - }, - "wall_south": { - "model": "furenikusroads:cats_eye", "x": 270 - }, - "wall_west": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90 - }, - "roof_ns": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 90 - }, - "roof_ew": { - "model": "furenikusroads:cats_eye", "x": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_double.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_double.json deleted file mode 100644 index 08bb823c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_double.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_white_e", - "right": "furenikusroads:blocks/cats_eye_white_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye_double" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye_double" - }], - "eye_type": { - "floor_ns": { - "model": "furenikusroads:cats_eye_double", "y": 90 - }, - "floor_ew": { - "model": "furenikusroads:cats_eye_double" - }, - "wall_north": { - "model": "furenikusroads:cats_eye_double", "x": 90 - }, - "wall_east": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90 - }, - "wall_south": { - "model": "furenikusroads:cats_eye_double", "x": 270 - }, - "wall_west": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90 - }, - "roof_ns": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 90 - }, - "roof_ew": { - "model": "furenikusroads:cats_eye_double", "x": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_green.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_green.json deleted file mode 100644 index c11cb13d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_green.json +++ /dev/null @@ -1,113 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_white_e", - "right": "furenikusroads:blocks/cats_eye_green_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye", - "transform": { - "thirdperson_righthand": { - "translation": [0, 8, 1.25] - }, - "thirdperson_lefthand": { - "translation": [0, 8, 1.25] - }, - "firstperson_righthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "firstperson_lefthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "ground": { - "translation": [0, 12.25, 0.25], - "scale": [2, 2, 2] - }, - "gui": { - "rotation": [15, 45, 0], - "translation": [0, 30, 0], - "scale": [4, 4, 4] - }, - "fixed": { - "rotation": [-90, 90, 0], - "translation": [0, 0, -31.75], - "scale": [4, 4, 4] - } - } - }], - "eye_type": { - "floor_n": { - "model": "furenikusroads:cats_eye", "y": 90 - }, - "floor_e": { - "model": "furenikusroads:cats_eye" - }, - "floor_s": { - "model": "furenikusroads:cats_eye", "y": 270 - }, - "floor_w": { - "model": "furenikusroads:cats_eye", "y": 180 - }, - "wall_north_rg": { - "model": "furenikusroads:cats_eye", "x": 90 - }, - "wall_east_rg": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90 - }, - "wall_south_rg": { - "model": "furenikusroads:cats_eye", "x": 270 - }, - "wall_west_rg": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90 - }, - "wall_north_gr": { - "model": "furenikusroads:cats_eye", "x": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_east_gr": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_south_gr": { - "model": "furenikusroads:cats_eye", "x": 270, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_west_gr": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "roof_n": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 90 - }, - "roof_e": { - "model": "furenikusroads:cats_eye", "x": 180 - }, - "roof_s": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 270 - }, - "roof_w": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_green_double.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_green_double.json deleted file mode 100644 index ee1f2bbc..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_green_double.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_white_e", - "right": "furenikusroads:blocks/cats_eye_green_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye_double" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye_double" - }], - "eye_type": { - "floor_n": { - "model": "furenikusroads:cats_eye_double", "y": 90 - }, - "floor_e": { - "model": "furenikusroads:cats_eye_double" - }, - "floor_s": { - "model": "furenikusroads:cats_eye_double", "y": 270 - }, - "floor_w": { - "model": "furenikusroads:cats_eye_double", "y": 180 - }, - "wall_north_rg": { - "model": "furenikusroads:cats_eye_double", "x": 90 - }, - "wall_east_rg": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90 - }, - "wall_south_rg": { - "model": "furenikusroads:cats_eye_double", "x": 270 - }, - "wall_west_rg": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90 - }, - "wall_north_gr": { - "model": "furenikusroads:cats_eye_double", "x": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_east_gr": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_south_gr": { - "model": "furenikusroads:cats_eye_double", "x": 270, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_west_gr": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_green_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "roof_n": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 90 - }, - "roof_e": { - "model": "furenikusroads:cats_eye_double", "x": 180 - }, - "roof_s": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 270 - }, - "roof_w": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_red.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_red.json deleted file mode 100644 index 4f47285b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_red.json +++ /dev/null @@ -1,113 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_white_e", - "right": "furenikusroads:blocks/cats_eye_red_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye", - "transform": { - "thirdperson_righthand": { - "translation": [0, 8, 1.25] - }, - "thirdperson_lefthand": { - "translation": [0, 8, 1.25] - }, - "firstperson_righthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "firstperson_lefthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "ground": { - "translation": [0, 12.25, 0.25], - "scale": [2, 2, 2] - }, - "gui": { - "rotation": [15, 45, 0], - "translation": [0, 30, 0], - "scale": [4, 4, 4] - }, - "fixed": { - "rotation": [-90, 90, 0], - "translation": [0, 0, -31.75], - "scale": [4, 4, 4] - } - } - }], - "eye_type": { - "floor_n": { - "model": "furenikusroads:cats_eye", "y": 90 - }, - "floor_e": { - "model": "furenikusroads:cats_eye" - }, - "floor_s": { - "model": "furenikusroads:cats_eye", "y": 270 - }, - "floor_w": { - "model": "furenikusroads:cats_eye", "y": 180 - }, - "wall_north_rg": { - "model": "furenikusroads:cats_eye", "x": 90 - }, - "wall_east_rg": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90 - }, - "wall_south_rg": { - "model": "furenikusroads:cats_eye", "x": 270 - }, - "wall_west_rg": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90 - }, - "wall_north_gr": { - "model": "furenikusroads:cats_eye", "x": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_east_gr": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_south_gr": { - "model": "furenikusroads:cats_eye", "x": 270, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_west_gr": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "roof_n": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 90 - }, - "roof_e": { - "model": "furenikusroads:cats_eye", "x": 180 - }, - "roof_s": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 270 - }, - "roof_w": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_red_double.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_red_double.json deleted file mode 100644 index de95a21b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_red_double.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_white_e", - "right": "furenikusroads:blocks/cats_eye_red_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye_double" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye_double" - }], - "eye_type": { - "floor_n": { - "model": "furenikusroads:cats_eye_double", "y": 90 - }, - "floor_e": { - "model": "furenikusroads:cats_eye_double" - }, - "floor_s": { - "model": "furenikusroads:cats_eye_double", "y": 270 - }, - "floor_w": { - "model": "furenikusroads:cats_eye_double", "y": 180 - }, - "wall_north_rg": { - "model": "furenikusroads:cats_eye_double", "x": 90 - }, - "wall_east_rg": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90 - }, - "wall_south_rg": { - "model": "furenikusroads:cats_eye_double", "x": 270 - }, - "wall_west_rg": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90 - }, - "wall_north_gr": { - "model": "furenikusroads:cats_eye_double", "x": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_east_gr": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_south_gr": { - "model": "furenikusroads:cats_eye_double", "x": 270, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_west_gr": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "roof_n": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 90 - }, - "roof_e": { - "model": "furenikusroads:cats_eye_double", "x": 180 - }, - "roof_s": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 270 - }, - "roof_w": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_yellow.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_yellow.json deleted file mode 100644 index d394fac6..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_yellow.json +++ /dev/null @@ -1,113 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_white_e", - "right": "furenikusroads:blocks/cats_eye_yellow_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye", - "transform": { - "thirdperson_righthand": { - "translation": [0, 8, 1.25] - }, - "thirdperson_lefthand": { - "translation": [0, 8, 1.25] - }, - "firstperson_righthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "firstperson_lefthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "ground": { - "translation": [0, 12.25, 0.25], - "scale": [2, 2, 2] - }, - "gui": { - "rotation": [15, 45, 0], - "translation": [0, 30, 0], - "scale": [4, 4, 4] - }, - "fixed": { - "rotation": [-90, 90, 0], - "translation": [0, 0, -31.75], - "scale": [4, 4, 4] - } - } - }], - "eye_type": { - "floor_n": { - "model": "furenikusroads:cats_eye", "y": 90 - }, - "floor_e": { - "model": "furenikusroads:cats_eye" - }, - "floor_s": { - "model": "furenikusroads:cats_eye", "y": 270 - }, - "floor_w": { - "model": "furenikusroads:cats_eye", "y": 180 - }, - "wall_north_rg": { - "model": "furenikusroads:cats_eye", "x": 90 - }, - "wall_east_rg": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90 - }, - "wall_south_rg": { - "model": "furenikusroads:cats_eye", "x": 270 - }, - "wall_west_rg": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90 - }, - "wall_north_gr": { - "model": "furenikusroads:cats_eye", "x": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_yellow_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_east_gr": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_yellow_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_south_gr": { - "model": "furenikusroads:cats_eye", "x": 270, - "textures": { - "left": "furenikusroads:blocks/cats_eye_yellow_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_west_gr": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_yellow_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "roof_n": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 90 - }, - "roof_e": { - "model": "furenikusroads:cats_eye", "x": 180 - }, - "roof_s": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 270 - }, - "roof_w": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_yellow_double.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_yellow_double.json deleted file mode 100644 index e623951c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_white_yellow_double.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_white_e", - "right": "furenikusroads:blocks/cats_eye_yellow_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye_double" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye_double" - }], - "eye_type": { - "floor_n": { - "model": "furenikusroads:cats_eye_double", "y": 90 - }, - "floor_e": { - "model": "furenikusroads:cats_eye_double" - }, - "floor_s": { - "model": "furenikusroads:cats_eye_double", "y": 270 - }, - "floor_w": { - "model": "furenikusroads:cats_eye_double", "y": 180 - }, - "wall_north_rg": { - "model": "furenikusroads:cats_eye_double", "x": 90 - }, - "wall_east_rg": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90 - }, - "wall_south_rg": { - "model": "furenikusroads:cats_eye_double", "x": 270 - }, - "wall_west_rg": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90 - }, - "wall_north_gr": { - "model": "furenikusroads:cats_eye_double", "x": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_yellow_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_east_gr": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_yellow_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_south_gr": { - "model": "furenikusroads:cats_eye_double", "x": 270, - "textures": { - "left": "furenikusroads:blocks/cats_eye_yellow_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "wall_west_gr": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_yellow_e", - "right": "furenikusroads:blocks/cats_eye_white_e" - } - }, - "roof_n": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 90 - }, - "roof_e": { - "model": "furenikusroads:cats_eye_double", "x": 180 - }, - "roof_s": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 270 - }, - "roof_w": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow.json deleted file mode 100644 index c7c6a9fa..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow.json +++ /dev/null @@ -1,73 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_yellow_e", - "right": "furenikusroads:blocks/cats_eye_yellow_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye", - "transform": { - "thirdperson_righthand": { - "translation": [0, 8, 1.25] - }, - "thirdperson_lefthand": { - "translation": [0, 8, 1.25] - }, - "firstperson_righthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "firstperson_lefthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "ground": { - "translation": [0, 12.25, 0.25], - "scale": [2, 2, 2] - }, - "gui": { - "rotation": [15, 45, 0], - "translation": [0, 30, 0], - "scale": [4, 4, 4] - }, - "fixed": { - "rotation": [-90, 90, 0], - "translation": [0, 0, -31.75], - "scale": [4, 4, 4] - } - } - }], - "eye_type": { - "floor_ns": { - "model": "furenikusroads:cats_eye", "y": 90 - }, - "floor_ew": { - "model": "furenikusroads:cats_eye" - }, - "wall_north": { - "model": "furenikusroads:cats_eye", "x": 90 - }, - "wall_east": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90 - }, - "wall_south": { - "model": "furenikusroads:cats_eye", "x": 270 - }, - "wall_west": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90 - }, - "roof_ns": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 90 - }, - "roof_ew": { - "model": "furenikusroads:cats_eye", "x": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow_double.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow_double.json deleted file mode 100644 index 1b116449..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow_double.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_yellow_e", - "right": "furenikusroads:blocks/cats_eye_yellow_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye_double" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye_double" - }], - "eye_type": { - "floor_ns": { - "model": "furenikusroads:cats_eye_double", "y": 90 - }, - "floor_ew": { - "model": "furenikusroads:cats_eye_double" - }, - "wall_north": { - "model": "furenikusroads:cats_eye_double", "x": 90 - }, - "wall_east": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90 - }, - "wall_south": { - "model": "furenikusroads:cats_eye_double", "x": 270 - }, - "wall_west": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90 - }, - "roof_ns": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 90 - }, - "roof_ew": { - "model": "furenikusroads:cats_eye_double", "x": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow_red.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow_red.json deleted file mode 100644 index 085b8108..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow_red.json +++ /dev/null @@ -1,113 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_yellow_e", - "right": "furenikusroads:blocks/cats_eye_red_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye", - "transform": { - "thirdperson_righthand": { - "translation": [0, 8, 1.25] - }, - "thirdperson_lefthand": { - "translation": [0, 8, 1.25] - }, - "firstperson_righthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "firstperson_lefthand": { - "translation": [0, 16, 0], - "scale": [2, 2, 2] - }, - "ground": { - "translation": [0, 12.25, 0.25], - "scale": [2, 2, 2] - }, - "gui": { - "rotation": [15, 45, 0], - "translation": [0, 30, 0], - "scale": [4, 4, 4] - }, - "fixed": { - "rotation": [-90, 90, 0], - "translation": [0, 0, -31.75], - "scale": [4, 4, 4] - } - } - }], - "eye_type": { - "floor_n": { - "model": "furenikusroads:cats_eye", "y": 90 - }, - "floor_e": { - "model": "furenikusroads:cats_eye" - }, - "floor_s": { - "model": "furenikusroads:cats_eye", "y": 270 - }, - "floor_w": { - "model": "furenikusroads:cats_eye", "y": 180 - }, - "wall_north_rg": { - "model": "furenikusroads:cats_eye", "x": 90 - }, - "wall_east_rg": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90 - }, - "wall_south_rg": { - "model": "furenikusroads:cats_eye", "x": 270 - }, - "wall_west_rg": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90 - }, - "wall_north_gr": { - "model": "furenikusroads:cats_eye", "x": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_yellow_e" - } - }, - "wall_east_gr": { - "model": "furenikusroads:cats_eye", "x": 90, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_yellow_e" - } - }, - "wall_south_gr": { - "model": "furenikusroads:cats_eye", "x": 270, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_yellow_e" - } - }, - "wall_west_gr": { - "model": "furenikusroads:cats_eye", "x": 270, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_yellow_e" - } - }, - "roof_n": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 90 - }, - "roof_e": { - "model": "furenikusroads:cats_eye", "x": 180 - }, - "roof_s": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 270 - }, - "roof_w": { - "model": "furenikusroads:cats_eye", "x": 180, "y": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow_red_double.json b/src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow_red_double.json deleted file mode 100644 index 0284ba09..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/cats_eye_yellow_red_double.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "left": "furenikusroads:blocks/cats_eye_yellow_e", - "right": "furenikusroads:blocks/cats_eye_red_e", - "particle": "furenikusroads:blocks/machine_metal_dark" - }, - "model": "furenikusroads:cats_eye_double" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:cats_eye_double" - }], - "eye_type": { - "floor_n": { - "model": "furenikusroads:cats_eye_double", "y": 90 - }, - "floor_e": { - "model": "furenikusroads:cats_eye_double" - }, - "floor_s": { - "model": "furenikusroads:cats_eye_double", "y": 270 - }, - "floor_w": { - "model": "furenikusroads:cats_eye_double", "y": 180 - }, - "wall_north_rg": { - "model": "furenikusroads:cats_eye_double", "x": 90 - }, - "wall_east_rg": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90 - }, - "wall_south_rg": { - "model": "furenikusroads:cats_eye_double", "x": 270 - }, - "wall_west_rg": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90 - }, - "wall_north_gr": { - "model": "furenikusroads:cats_eye_double", "x": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_yellow_e" - } - }, - "wall_east_gr": { - "model": "furenikusroads:cats_eye_double", "x": 90, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_yellow_e" - } - }, - "wall_south_gr": { - "model": "furenikusroads:cats_eye_double", "x": 270, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_yellow_e" - } - }, - "wall_west_gr": { - "model": "furenikusroads:cats_eye_double", "x": 270, "y": 90, - "textures": { - "left": "furenikusroads:blocks/cats_eye_red_e", - "right": "furenikusroads:blocks/cats_eye_yellow_e" - } - }, - "roof_n": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 90 - }, - "roof_e": { - "model": "furenikusroads:cats_eye_double", "x": 180 - }, - "roof_s": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 270 - }, - "roof_w": { - "model": "furenikusroads:cats_eye_double", "x": 180, "y": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/compactor.json b/src/main/resources/assets/furenikusroads/blockstates/compactor.json deleted file mode 100644 index de0fa20b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/compactor.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "2": "furenikusroads:blocks/machine_metal_dark", - "3": "furenikusroads:blocks/machine_metal_patterned", - "4": "furenikusroads:blocks/machine_piping", - "5": "furenikusroads:blocks/machine_part_plain", - "6": "furenikusroads:blocks/crusher_vents", - "7": "furenikusroads:blocks/machine_hazard", - "8": "furenikusroads:blocks/machine_vent_back_off", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:compactor" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:compactor", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "furnace_active": { - "true": { - "textures": { - "8": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_crusher" } - } - } - }, - "rotation": { - "north": { - "model": "furenikusroads:compactor", "y": 0 - }, - "east": { - "model": "furenikusroads:compactor", "y": 90 - }, - "south": { - "model": "furenikusroads:compactor", "y": 180 - }, - "west": { - "model": "furenikusroads:compactor", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/compactor_electric.json b/src/main/resources/assets/furenikusroads/blockstates/compactor_electric.json deleted file mode 100644 index a52761f4..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/compactor_electric.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal_electric", - "2": "furenikusroads:blocks/machine_metal", - "3": "furenikusroads:blocks/machine_metal_patterned_electric", - "4": "furenikusroads:blocks/machine_piping", - "5": "furenikusroads:blocks/machine_part_plain_electric", - "6": "furenikusroads:blocks/crusher_vents_electric", - "7": "furenikusroads:blocks/machine_hazard", - "8": "furenikusroads:blocks/machine_vent_back_off", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:compactor" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:compactor", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "furnace_active": { - "true": { - "textures": { - "8": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_crusher" } - } - } - }, - "rotation": { - "north": { - "model": "furenikusroads:compactor", "y": 0 - }, - "east": { - "model": "furenikusroads:compactor", "y": 90 - }, - "south": { - "model": "furenikusroads:compactor", "y": 180 - }, - "west": { - "model": "furenikusroads:compactor", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/crusher.json b/src/main/resources/assets/furenikusroads/blockstates/crusher.json deleted file mode 100644 index 556e147d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/crusher.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "2": "furenikusroads:blocks/machine_metal_dark", - "3": "furenikusroads:blocks/machine_metal_patterned", - "4": "furenikusroads:blocks/machine_piping", - "5": "furenikusroads:blocks/machine_part_plain", - "6": "furenikusroads:blocks/crusher_vents", - "7": "furenikusroads:blocks/machine_hazard", - "8": "furenikusroads:blocks/machine_vent_back_off", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:crusher" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:crusher", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "furnace_active": { - "true": { - "textures": { - "8": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_crusher" } - } - } - }, - "rotation": { - "north": { - "model": "furenikusroads:crusher", "y": 0 - }, - "east": { - "model": "furenikusroads:crusher", "y": 90 - }, - "south": { - "model": "furenikusroads:crusher", "y": 180 - }, - "west": { - "model": "furenikusroads:crusher", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/crusher_electric.json b/src/main/resources/assets/furenikusroads/blockstates/crusher_electric.json deleted file mode 100644 index 332c74bc..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/crusher_electric.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal_electric", - "2": "furenikusroads:blocks/machine_metal", - "3": "furenikusroads:blocks/machine_metal_patterned_electric", - "4": "furenikusroads:blocks/machine_piping", - "5": "furenikusroads:blocks/machine_part_plain_electric", - "6": "furenikusroads:blocks/crusher_vents_electric", - "7": "furenikusroads:blocks/machine_hazard", - "8": "furenikusroads:blocks/machine_vent_back_off", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:crusher" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:crusher", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "furnace_active": { - "true": { - "textures": { - "8": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_crusher" } - } - } - }, - "rotation": { - "north": { - "model": "furenikusroads:crusher", "y": 0 - }, - "east": { - "model": "furenikusroads:crusher", "y": 90 - }, - "south": { - "model": "furenikusroads:crusher", "y": 180 - }, - "west": { - "model": "furenikusroads:crusher", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/drain_cover_1.json b/src/main/resources/assets/furenikusroads/blockstates/drain_cover_1.json deleted file mode 100644 index d4e12225..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/drain_cover_1.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/manhole_slight_rust", - "1": "furenikusroads:blocks/manhole_no_rust", - "2": "furenikusroads:blocks/crusher_vents", - "3_0": "furenikusroads:blocks/road_block_standard", - "particle": "furenikusroads:blocks/road_block_standard" - }, - "model": "furenikusroads:draincover_1" - }, - "variants": { - "normal": [{}] - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/drain_cover_2.json b/src/main/resources/assets/furenikusroads/blockstates/drain_cover_2.json deleted file mode 100644 index 050bdb8a..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/drain_cover_2.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/manhole_slight_rust", - "1": "furenikusroads:blocks/manhole_no_rust", - "2": "furenikusroads:blocks/crusher_vents", - "3_0": "furenikusroads:blocks/road_block_standard", - "particle": "furenikusroads:blocks/road_block_standard" - }, - "model": "furenikusroads:draincover_2" - - }, - "variants": { - "normal": [{}] - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/fabricator.json b/src/main/resources/assets/furenikusroads/blockstates/fabricator.json deleted file mode 100644 index 15b48d8e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/fabricator.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "2": "furenikusroads:blocks/machine_metal_dark", - "3": "furenikusroads:blocks/machine_metal_patterned", - "4": "furenikusroads:blocks/machine_piping", - "5": "furenikusroads:blocks/machine_part_plain", - "6": "furenikusroads:blocks/crusher_vents", - "7": "furenikusroads:blocks/machine_hazard", - "8": "furenikusroads:blocks/machine_vent_back_off", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:fabricator" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:fabricator", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "furnace_active": { - "true": { - "textures": { - "8": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_fabricator" } - } - } - }, - "rotation": { - "north": { - "model": "furenikusroads:fabricator", "y": 0 - }, - "east": { - "model": "furenikusroads:fabricator", "y": 90 - }, - "south": { - "model": "furenikusroads:fabricator", "y": 180 - }, - "west": { - "model": "furenikusroads:fabricator", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/fabricator_electric.json b/src/main/resources/assets/furenikusroads/blockstates/fabricator_electric.json deleted file mode 100644 index 52522a46..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/fabricator_electric.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal_electric", - "2": "furenikusroads:blocks/machine_metal", - "3": "furenikusroads:blocks/machine_metal_patterned_electric", - "4": "furenikusroads:blocks/machine_piping", - "5": "furenikusroads:blocks/machine_part_plain_electric", - "6": "furenikusroads:blocks/crusher_vents_electric", - "7": "furenikusroads:blocks/machine_hazard", - "8": "furenikusroads:blocks/machine_vent_back_off", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:fabricator" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:fabricator", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "furnace_active": { - "true": { - "textures": { - "8": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_fabricator" } - } - } - }, - "rotation": { - "north": { - "model": "furenikusroads:fabricator", "y": 0 - }, - "east": { - "model": "furenikusroads:fabricator", "y": 90 - }, - "south": { - "model": "furenikusroads:fabricator", "y": 180 - }, - "west": { - "model": "furenikusroads:fabricator", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/fake_light_source.json b/src/main/resources/assets/furenikusroads/blockstates/fake_light_source.json deleted file mode 100644 index 2cc2afa4..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/fake_light_source.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "variants": { - "normal": { "model": "furenikusroads:nomodel" } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/generic_blocks.json b/src/main/resources/assets/furenikusroads/blockstates/generic_blocks.json deleted file mode 100644 index d4183e19..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/generic_blocks.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { "all": "furenikusroads:blocks/generic_blocks_0" }, - "model": "cube_all" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "street_block": { - "0": { "textures": { "all": "furenikusroads:blocks/generic_blocks_0" }}, - "1": { "textures": { "all": "furenikusroads:blocks/generic_blocks_1" }}, - "2": { "textures": { "all": "furenikusroads:blocks/generic_blocks_2" }}, - "3": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }}, - "4": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }}, - "5": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }}, - "6": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }}, - "7": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }}, - "8": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }}, - "9": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }}, - "10": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }}, - "11": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }}, - "12": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }}, - "13": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }}, - "14": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }}, - "15": { "textures": { "all": "furenikusroads:blocks/generic_blocks_3" }} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/hatch_box_red.json b/src/main/resources/assets/furenikusroads/blockstates/hatch_box_red.json deleted file mode 100644 index 1899d7b4..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/hatch_box_red.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:hatch_box" - }, - "variants": { - "inventory": [{ - "submodel": { - "paint_north": { "model": "furenikusroads:line_far_side" }, - "paint_east": { "model": "furenikusroads:line_far_side", "y": 90 }, - "paint_south": { "model": "furenikusroads:line_far_side", "y": 180 }, - "paint_west": { "model": "furenikusroads:line_far_side", "y": 270 } - }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - }, - "false": { - "submodel": { - "paint_east": { "model": "furenikusroads:line_far_side", "y": 90 } - } - } - }, - "north": { - "true": { - }, - "false": { - "submodel": { - "paint_north": { "model": "furenikusroads:line_far_side" } - } - } - }, - "south": { - "true": { - }, - "false": { - "submodel": { - "paint_south": { "model": "furenikusroads:line_far_side", "y": 180 } - } - } - }, - "west": { - "true": { - }, - "false": { - "submodel": { - "paint_west": { "model": "furenikusroads:line_far_side", "y": 270 } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/hatch_box_white.json b/src/main/resources/assets/furenikusroads/blockstates/hatch_box_white.json deleted file mode 100644 index 177f4a83..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/hatch_box_white.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:hatch_box" - }, - "variants": { - "inventory": [{ - "submodel": { - "paint_north": { "model": "furenikusroads:line_far_side" }, - "paint_east": { "model": "furenikusroads:line_far_side", "y": 90 }, - "paint_south": { "model": "furenikusroads:line_far_side", "y": 180 }, - "paint_west": { "model": "furenikusroads:line_far_side", "y": 270 } - }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - }, - "false": { - "submodel": { - "paint_east": { "model": "furenikusroads:line_far_side", "y": 90 } - } - } - }, - "north": { - "true": { - }, - "false": { - "submodel": { - "paint_north": { "model": "furenikusroads:line_far_side" } - } - } - }, - "south": { - "true": { - }, - "false": { - "submodel": { - "paint_south": { "model": "furenikusroads:line_far_side", "y": 180 } - } - } - }, - "west": { - "true": { - }, - "false": { - "submodel": { - "paint_west": { "model": "furenikusroads:line_far_side", "y": 270 } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/hatch_box_yellow.json b/src/main/resources/assets/furenikusroads/blockstates/hatch_box_yellow.json deleted file mode 100644 index ee978688..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/hatch_box_yellow.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:hatch_box" - }, - "variants": { - "inventory": [{ - "submodel": { - "paint_north": { "model": "furenikusroads:line_far_side" }, - "paint_east": { "model": "furenikusroads:line_far_side", "y": 90 }, - "paint_south": { "model": "furenikusroads:line_far_side", "y": 180 }, - "paint_west": { "model": "furenikusroads:line_far_side", "y": 270 } - }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - }, - "false": { - "submodel": { - "paint_east": { "model": "furenikusroads:line_far_side", "y": 90 } - } - } - }, - "north": { - "true": { - }, - "false": { - "submodel": { - "paint_north": { "model": "furenikusroads:line_far_side" } - } - } - }, - "south": { - "true": { - }, - "false": { - "submodel": { - "paint_south": { "model": "furenikusroads:line_far_side", "y": 180 } - } - } - }, - "west": { - "true": { - }, - "false": { - "submodel": { - "paint_west": { "model": "furenikusroads:line_far_side", "y": 270 } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/kerb_standard.json b/src/main/resources/assets/furenikusroads/blockstates/kerb_standard.json deleted file mode 100644 index f7a84368..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/kerb_standard.json +++ /dev/null @@ -1,195 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/sidewalk_kerb", - "particle": "furenikusroads:blocks/sidewalk_kerb" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory1": [{ - "model": "furenikusroads:kerb_inv", - "textures": { - "0": "furenikusroads:blocks/sidewalk_kerb", - "particle": "furenikusroads:blocks/sidewalk_kerb" - }, - "thirdperson_righthand": { - "translation": [0, 11.25, 6] - }, - "thirdperson_lefthand": { - "translation": [0, 11.25, 6] - }, - "firstperson_righthand": { - "translation": [0, 9.5, 4.25] - }, - "firstperson_lefthand": { - "translation": [0, 9.5, 4.25] - }, - "ground": { - "translation": [0, 8.5, 0] - }, - "gui": { - "rotation": [29.5, 45, 0], - "translation": [4.25, 6.25, 0] - }, - "head": { - "translation": [0, 4.75, 0] - }, - "fixed": { - "translation": [0, 3.5, 4] - } - }], - "inventory2": [{ - "model": "furenikusroads:kerb_inv", - "textures": { - "0": "furenikusroads:blocks/sidewalk_white", - "particle": "furenikusroads:blocks/sidewalk_white" - }, - "thirdperson_righthand": { - "translation": [0, 11.25, 6] - }, - "thirdperson_lefthand": { - "translation": [0, 11.25, 6] - }, - "firstperson_righthand": { - "translation": [0, 9.5, 4.25] - }, - "firstperson_lefthand": { - "translation": [0, 9.5, 4.25] - }, - "ground": { - "translation": [0, 8.5, 0] - }, - "gui": { - "rotation": [29.5, 45, 0], - "translation": [4.25, 6.25, 0] - }, - "head": { - "translation": [0, 4.75, 0] - }, - "fixed": { - "translation": [0, 3.5, 4] - } - }], - "inventory3": [{ - "model": "furenikusroads:kerb_inv", - "textures": { - "0": "furenikusroads:blocks/sidewalk_yellow", - "particle": "furenikusroads:blocks/sidewalk_yellow" - }, - "thirdperson_righthand": { - "translation": [0, 11.25, 6] - }, - "thirdperson_lefthand": { - "translation": [0, 11.25, 6] - }, - "firstperson_righthand": { - "translation": [0, 9.5, 4.25] - }, - "firstperson_lefthand": { - "translation": [0, 9.5, 4.25] - }, - "ground": { - "translation": [0, 8.5, 0] - }, - "gui": { - "rotation": [29.5, 45, 0], - "translation": [4.25, 6.25, 0] - }, - "head": { - "translation": [0, 4.75, 0] - }, - "fixed": { - "translation": [0, 3.5, 4] - } - }], - "inventory4": [{ - "model": "furenikusroads:kerb_inv", - "textures": { - "0": "furenikusroads:blocks/sidewalk_red", - "particle": "furenikusroads:blocks/sidewalk_red" - }, - "thirdperson_righthand": { - "translation": [0, 11.25, 6] - }, - "thirdperson_lefthand": { - "translation": [0, 11.25, 6] - }, - "firstperson_righthand": { - "translation": [0, 9.5, 4.25] - }, - "firstperson_lefthand": { - "translation": [0, 9.5, 4.25] - }, - "ground": { - "translation": [0, 8.5, 0] - }, - "gui": { - "rotation": [29.5, 45, 0], - "translation": [4.25, 6.25, 0] - }, - "head": { - "translation": [0, 4.75, 0] - }, - "fixed": { - "translation": [0, 3.5, 4] - } - }], - "connect": { - "none": { - "submodel": { - "kerb_side": { "model": "furenikusroads:nomodel" } - } - }, - "left": { - "submodel": { - "kerb_side": { "model": "furenikusroads:kerb_left" } - } - }, - "right": { - "submodel": { - "kerb_side": { "model": "furenikusroads:kerb_right" } - } - }, - "left_b": { - "submodel": { - "kerb_side": { "model": "furenikusroads:kerb_left_b" } - } - }, - "right_b": { - "submodel": { - "kerb_side": { "model": "furenikusroads:kerb_right_b" } - } - } - }, - "zz_facing": { - "north": { "model": "furenikusroads:kerb_a" }, - "east": { "model": "furenikusroads:kerb_b", "y": 90 }, - "south": { "model": "furenikusroads:kerb_a", "y": 180 }, - "west": { "model": "furenikusroads:kerb_b", "y": 270 } - }, - "colour": { - "standard": {}, - "white": { - "textures": { - "0": "furenikusroads:blocks/sidewalk_white", - "particle": "furenikusroads:blocks/sidewalk_white" - } - }, - "yellow": { - "textures": { - "0": "furenikusroads:blocks/sidewalk_yellow", - "particle": "furenikusroads:blocks/sidewalk_yellow" - } - }, - "red": { - "textures": { - "0": "furenikusroads:blocks/sidewalk_red", - "particle": "furenikusroads:blocks/sidewalk_red" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/line_red_crossing_diagonal.json b/src/main/resources/assets/furenikusroads/blockstates/line_red_crossing_diagonal.json deleted file mode 100644 index dca63302..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/line_red_crossing_diagonal.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:connected_diagonal_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/line_red_crossing_diagonal" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:connected_diagonal_1" }, - "north_top_mid": { "model": "furenikusroads:connected_diagonal_1", "y": 180 }, - "north_bottom_mid": { "model": "furenikusroads:connected_diagonal_2" }, - "north_bottom": { "model": "furenikusroads:connected_diagonal_2", "y": 180 }, - - "east_top": { "model": "furenikusroads:connected_diagonal_1", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:connected_diagonal_1", "y": 270 }, - "east_bottom_mid": { "model": "furenikusroads:connected_diagonal_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:connected_diagonal_2", "y": 270 }, - - "south_top": { "model": "furenikusroads:connected_diagonal_1", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:connected_diagonal_1" }, - "south_bottom_mid": { "model": "furenikusroads:connected_diagonal_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:connected_diagonal_2" }, - - "west_top": { "model": "furenikusroads:connected_diagonal_1", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:connected_diagonal_1", "y": 90 }, - "west_bottom_mid": { "model": "furenikusroads:connected_diagonal_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:connected_diagonal_2", "y": 90 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/line_white_crossing_diagonal.json b/src/main/resources/assets/furenikusroads/blockstates/line_white_crossing_diagonal.json deleted file mode 100644 index 0242eccd..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/line_white_crossing_diagonal.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:connected_diagonal_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/line_white_crossing_diagonal" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:connected_diagonal_1" }, - "north_top_mid": { "model": "furenikusroads:connected_diagonal_1", "y": 180 }, - "north_bottom_mid": { "model": "furenikusroads:connected_diagonal_2" }, - "north_bottom": { "model": "furenikusroads:connected_diagonal_2", "y": 180 }, - - "east_top": { "model": "furenikusroads:connected_diagonal_1", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:connected_diagonal_1", "y": 270 }, - "east_bottom_mid": { "model": "furenikusroads:connected_diagonal_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:connected_diagonal_2", "y": 270 }, - - "south_top": { "model": "furenikusroads:connected_diagonal_1", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:connected_diagonal_1" }, - "south_bottom_mid": { "model": "furenikusroads:connected_diagonal_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:connected_diagonal_2" }, - - "west_top": { "model": "furenikusroads:connected_diagonal_1", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:connected_diagonal_1", "y": 90 }, - "west_bottom_mid": { "model": "furenikusroads:connected_diagonal_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:connected_diagonal_2", "y": 90 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/line_yellow_crossing_diagonal.json b/src/main/resources/assets/furenikusroads/blockstates/line_yellow_crossing_diagonal.json deleted file mode 100644 index 3e134451..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/line_yellow_crossing_diagonal.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:connected_diagonal_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/line_yellow_crossing_diagonal" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:connected_diagonal_1" }, - "north_top_mid": { "model": "furenikusroads:connected_diagonal_1", "y": 180 }, - "north_bottom_mid": { "model": "furenikusroads:connected_diagonal_2" }, - "north_bottom": { "model": "furenikusroads:connected_diagonal_2", "y": 180 }, - - "east_top": { "model": "furenikusroads:connected_diagonal_1", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:connected_diagonal_1", "y": 270 }, - "east_bottom_mid": { "model": "furenikusroads:connected_diagonal_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:connected_diagonal_2", "y": 270 }, - - "south_top": { "model": "furenikusroads:connected_diagonal_1", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:connected_diagonal_1" }, - "south_bottom_mid": { "model": "furenikusroads:connected_diagonal_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:connected_diagonal_2" }, - - "west_top": { "model": "furenikusroads:connected_diagonal_1", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:connected_diagonal_1", "y": 90 }, - "west_bottom_mid": { "model": "furenikusroads:connected_diagonal_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:connected_diagonal_2", "y": 90 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/manhole_cover_round.json b/src/main/resources/assets/furenikusroads/blockstates/manhole_cover_round.json deleted file mode 100644 index e896fb38..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/manhole_cover_round.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/manhole_slight_rust", - "1": "furenikusroads:blocks/manhole_no_rust", - "particle": "furenikusroads:blocks/manhole_slight_rust" - }, - "model": "furenikusroads:manhole_cover_round" - }, - "variants": { - "normal": [{}] - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/manhole_cover_square.json b/src/main/resources/assets/furenikusroads/blockstates/manhole_cover_square.json deleted file mode 100644 index 612b2060..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/manhole_cover_square.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/manhole_slight_rust", - "1": "furenikusroads:blocks/manhole_no_rust", - "particle": "furenikusroads:blocks/manhole_slight_rust" - }, - "model": "furenikusroads:manhole_cover_square" - }, - "variants": { - "normal": [{}] - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/paint_filler.json b/src/main/resources/assets/furenikusroads/blockstates/paint_filler.json deleted file mode 100644 index 65d05c7f..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/paint_filler.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "1": "furenikusroads:blocks/machine_piping", - "2": "furenikusroads:blocks/machine_glass", - "3": "furenikusroads:blocks/paint_filler_machine_a", - "4": "furenikusroads:blocks/paint_filler_machine_b", - "5": "furenikusroads:blocks/machine_metal_dark", - "6": "furenikusroads:blocks/machine_vent_back_off", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:paint_filler_station" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:paint_filler_station", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "gun_loaded": { - "true": { - "submodel": { - "gun": { "model": "furenikusroads:paint_filler_station_gunloaded" } - }, - "textures": { - "3": "furenikusroads:blocks/paint_filler_machine_a" - } - }, - "false": { - "submodel": { - "gun": { "model": "furenikusroads:nomodel" } - } - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_paint_filler" } - } - } - }, - "furnace_active": { - "true": { - "textures": { - "6": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "rotation": { - "north": { - "model": "furenikusroads:paint_filler_station", "y": 270 - }, - "east": { - "model": "furenikusroads:paint_filler_station", "y": 0 - }, - "south": { - "model": "furenikusroads:paint_filler_station", "y": 90 - }, - "west": { - "model": "furenikusroads:paint_filler_station", "y": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/paint_filler_electric.json b/src/main/resources/assets/furenikusroads/blockstates/paint_filler_electric.json deleted file mode 100644 index a82901ab..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/paint_filler_electric.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal_electric", - "1": "furenikusroads:blocks/machine_piping", - "2": "furenikusroads:blocks/machine_glass", - "3": "furenikusroads:blocks/paint_filler_machine_a_electric", - "4": "furenikusroads:blocks/paint_filler_machine_b_electric", - "5": "furenikusroads:blocks/machine_metal", - "6": "furenikusroads:blocks/machine_vent_back_off", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:paint_filler_station" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:paint_filler_station", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "gun_loaded": { - "true": { - "submodel": { - "gun": { "model": "furenikusroads:paint_filler_station_gunloaded" } - }, - "textures": { - "3": "furenikusroads:blocks/paint_filler_machine_a" - } - }, - "false": { - "submodel": { - "gun": { "model": "furenikusroads:nomodel" } - } - } - }, - "furnace_active": { - "true": { - "textures": { - "6": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_paint_filler" } - } - } - }, - "rotation": { - "north": { - "model": "furenikusroads:paint_filler_station", "y": 270 - }, - "east": { - "model": "furenikusroads:paint_filler_station", "y": 0 - }, - "south": { - "model": "furenikusroads:paint_filler_station", "y": 90 - }, - "west": { - "model": "furenikusroads:paint_filler_station", "y": 180 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/paint_filler_hopper.json b/src/main/resources/assets/furenikusroads/blockstates/paint_filler_hopper.json deleted file mode 100644 index cebecd9b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/paint_filler_hopper.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "forge_marker":1, - "defaults":{ - "transform":"forge:default-block", - "textures":{ - "particle":"furenikusroads:blocks/machine_part_plain" - }, - "model":"furenikusroads:hopper_core" - }, - "variants":{ - "inventory":[ - { - "model":"furenikusroads:hopper_core", - "transform":{ - "ground":{ - "scale":[ - 0.5, - 0.5, - 0.5 - ] - }, - "fixed":{ - "rotation":[ - 0, - -90, - 0 - ], - "translation":[ - 0, - 0, - -2.5 - ], - "scale":[ - 0.5, - 0.5, - 0.5 - ] - }, - "gui":{ - "rotation":[ - 15, - 45, - 0 - ], - "scale":[ - 0.5, - 0.5, - 0.5 - ] - } - } - } - ], - "is_output":{ - "true":{ - "textures":{ - "io":"furenikusroads:blocks/hopper_in" - } - }, - "false":{ - "textures":{ - "io":"furenikusroads:blocks/hopper_out" - } - } - }, - "rotation":{ - "north":{ - "submodel":{ - "connect":{ - "model":"furenikusroads:hopper_connect", - "y":0 - } - } - }, - "east":{ - "submodel":{ - "connect":{ - "model":"furenikusroads:hopper_connect", - "y":90 - } - } - }, - "south":{ - "submodel":{ - "connect":{ - "model":"furenikusroads:hopper_connect", - "y":180 - } - } - }, - "west":{ - "submodel":{ - "connect":{ - "model":"furenikusroads:hopper_connect", - "y":270 - } - } - } - }, - "up":{ - "true":{ - "submodel":{ - "up":{ - "model":"furenikusroads:hopper_io_top" - } - } - }, - "false":{ - - } - }, - "north":{ - "true":{ - "submodel":{ - "north":{ - "model":"furenikusroads:hopper_io_nesw", - "y":0 - } - } - }, - "false":{ - - } - }, - "east":{ - "true":{ - "submodel":{ - "east":{ - "model":"furenikusroads:hopper_io_nesw", - "y":90 - } - } - }, - "false":{ - - } - }, - "south":{ - "true":{ - "submodel":{ - "south":{ - "model":"furenikusroads:hopper_io_nesw", - "y":180 - } - } - }, - "false":{ - - } - }, - "west":{ - "true":{ - "submodel":{ - "west":{ - "model":"furenikusroads:hopper_io_nesw", - "y":270 - } - } - }, - "false":{ - - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/paint_oven.json b/src/main/resources/assets/furenikusroads/blockstates/paint_oven.json deleted file mode 100644 index ff685cd7..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/paint_oven.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:paint_oven" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:paint_oven", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_paint_oven" } - } - } - }, - "furnace_active": { - "true": { - "textures": { - "6": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "rotation": { - "north": { - "model": "furenikusroads:paint_oven", "y": 0 - }, - "east": { - "model": "furenikusroads:paint_oven", "y": 90 - }, - "south": { - "model": "furenikusroads:paint_oven", "y": 180 - }, - "west": { - "model": "furenikusroads:paint_oven", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/paint_oven_electric.json b/src/main/resources/assets/furenikusroads/blockstates/paint_oven_electric.json deleted file mode 100644 index 8cb5bb71..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/paint_oven_electric.json +++ /dev/null @@ -1,66 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "9": "furenikusroads:blocks/machine_metal_patterned_electric", - "10": "furenikusroads:blocks/machine_part_plain", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:paint_oven" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:paint_oven", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_paint_oven" } - } - } - }, - "furnace_active": { - "true": { - "textures": { - "6": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "rotation": { - "north": { - "model": "furenikusroads:paint_oven", "y": 0 - }, - "east": { - "model": "furenikusroads:paint_oven", "y": 90 - }, - "south": { - "model": "furenikusroads:paint_oven", "y": 180 - }, - "west": { - "model": "furenikusroads:paint_oven", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/paint_red_fluid.json b/src/main/resources/assets/furenikusroads/blockstates/paint_red_fluid.json deleted file mode 100644 index 448317bc..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/paint_red_fluid.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "textures": { - "particle": "furenikusroads:fluids/red_paint_particle", - "all": "furenikusroads:fluids/red_paint_flowing" - }, - "model": "forge:fluid", - "custom": { "fluid": "red_paint" }, - "uvlock": false - }, - "variants": { - "inventory": { - "model": "forge:fluid", - "textures": { - "1": "furenikusroads:blocks/red_paint_flowing" - } - }, - "level": { - "0": { }, - "1": { }, - "2": { }, - "3": { }, - "4": { }, - "5": { }, - "6": { }, - "7": { }, - "8": { }, - "9": { }, - "10": { }, - "11": { }, - "12": { }, - "13": { }, - "14": { }, - "15": { } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/paint_white_fluid.json b/src/main/resources/assets/furenikusroads/blockstates/paint_white_fluid.json deleted file mode 100644 index c53d8172..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/paint_white_fluid.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "textures": { - "particle": "furenikusroads:fluids/white_paint_particle", - "all": "furenikusroads:fluids/white_paint_flowing" - }, - "model": "forge:fluid", - "custom": { "fluid": "white_paint" }, - "uvlock": false - }, - "variants": { - "inventory": { - "model": "forge:fluid", - "textures": { - "1": "furenikusroads:blocks/white_paint_flowing" - } - }, - "level": { - "0": { }, - "1": { }, - "2": { }, - "3": { }, - "4": { }, - "5": { }, - "6": { }, - "7": { }, - "8": { }, - "9": { }, - "10": { }, - "11": { }, - "12": { }, - "13": { }, - "14": { }, - "15": { } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/paint_yellow_fluid.json b/src/main/resources/assets/furenikusroads/blockstates/paint_yellow_fluid.json deleted file mode 100644 index 5f3a31d4..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/paint_yellow_fluid.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "textures": { - "particle": "furenikusroads:blocks/yellow_paint_particle", - "all": "furenikusroads:fluids/yellow_paint_flowing" - }, - "model": "forge:fluid", - "custom": { "fluid": "yellow_paint" }, - "uvlock": false - }, - "variants": { - "inventory": { - "model": "forge:fluid", - "textures": { - "1": "furenikusroads:blocks/yellow_paint_flowing" - } - }, - "level": { - "0": { }, - "1": { }, - "2": { }, - "3": { }, - "4": { }, - "5": { }, - "6": { }, - "7": { }, - "8": { }, - "9": { }, - "10": { }, - "11": { }, - "12": { }, - "13": { }, - "14": { }, - "15": { } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/post_large_horizontal.json b/src/main/resources/assets/furenikusroads/blockstates/post_large_horizontal.json deleted file mode 100644 index f24e11fb..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/post_large_horizontal.json +++ /dev/null @@ -1,75 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:post_large_horizontal_mid" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:post_large_horizontal_mid", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "submodel": { - "post_east": { "model": "furenikusroads:post_large_horizontal_side", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "submodel": { - "post_north": { "model": "furenikusroads:post_large_horizontal_side" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "post_south": { "model": "furenikusroads:post_large_horizontal_side", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "post_west": { "model": "furenikusroads:post_large_horizontal_side", "y": 270 } - } - }, - "false": { - } - }, - "up": { - "true": {}, - "false": {} - }, - "down": { - "true": {}, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/post_large_horizontal_2.json b/src/main/resources/assets/furenikusroads/blockstates/post_large_horizontal_2.json deleted file mode 100644 index f24e11fb..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/post_large_horizontal_2.json +++ /dev/null @@ -1,75 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:post_large_horizontal_mid" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:post_large_horizontal_mid", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "submodel": { - "post_east": { "model": "furenikusroads:post_large_horizontal_side", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "submodel": { - "post_north": { "model": "furenikusroads:post_large_horizontal_side" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "post_south": { "model": "furenikusroads:post_large_horizontal_side", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "post_west": { "model": "furenikusroads:post_large_horizontal_side", "y": 270 } - } - }, - "false": { - } - }, - "up": { - "true": {}, - "false": {} - }, - "down": { - "true": {}, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/post_large_vertical.json b/src/main/resources/assets/furenikusroads/blockstates/post_large_vertical.json deleted file mode 100644 index da86bc67..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/post_large_vertical.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:post_large" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:post_large", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "model": "furenikusroads:post_large_base", - "submodel": { - "post_east": { "model": "furenikusroads:post_large_v_to_h", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "model": "furenikusroads:post_large_base", - "submodel": { - "post_north": { "model": "furenikusroads:post_large_v_to_h" } - } - }, - "false": { - } - }, - "south": { - "true": { - "model": "furenikusroads:post_large_base", - "submodel": { - "post_south": { "model": "furenikusroads:post_large_v_to_h", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "model": "furenikusroads:post_large_base", - "submodel": { - "post_west": { "model": "furenikusroads:post_large_v_to_h", "y": 270 } - } - }, - "false": { - } - }, - "up": { - "true": { - "model": "furenikusroads:post_large_base", - "submodel": { - "post_up": { "model": "furenikusroads:post_large_up", "y": 270 } - } - }, - "false": { - } - }, - "down": { - "true": { - "submodel": { - "post_down": { "model": "furenikusroads:post_large_under" } - } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/post_large_vertical_2.json b/src/main/resources/assets/furenikusroads/blockstates/post_large_vertical_2.json deleted file mode 100644 index 692df466..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/post_large_vertical_2.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:post_large" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:post_large", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "model": "furenikusroads:post_large_base_2", - "submodel": { - "post_east": { "model": "furenikusroads:post_large_v_to_h_2", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "model": "furenikusroads:post_large_base_2", - "submodel": { - "post_north": { "model": "furenikusroads:post_large_v_to_h_2" } - } - }, - "false": { - } - }, - "south": { - "true": { - "model": "furenikusroads:post_large_base_2", - "submodel": { - "post_south": { "model": "furenikusroads:post_large_v_to_h_2", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "model": "furenikusroads:post_large_base_2", - "submodel": { - "post_west": { "model": "furenikusroads:post_large_v_to_h_2", "y": 270 } - } - }, - "false": { - } - }, - "up": { - "true": { - "model": "furenikusroads:post_large_base_2", - "submodel": { - "post_up": { "model": "furenikusroads:post_large_up_2", "y": 270 } - } - }, - "false": { - } - }, - "down": { - "true": { - "submodel": { - "post_down": { "model": "furenikusroads:post_large_under" } - } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/post_medium_horizontal.json b/src/main/resources/assets/furenikusroads/blockstates/post_medium_horizontal.json deleted file mode 100644 index 49666655..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/post_medium_horizontal.json +++ /dev/null @@ -1,75 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:post_medium_horizontal_mid" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:post_medium_horizontal_mid", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "submodel": { - "post_east": { "model": "furenikusroads:post_medium_horizontal_side", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "submodel": { - "post_north": { "model": "furenikusroads:post_medium_horizontal_side" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "post_south": { "model": "furenikusroads:post_medium_horizontal_side", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "post_west": { "model": "furenikusroads:post_medium_horizontal_side", "y": 270 } - } - }, - "false": { - } - }, - "up": { - "true": {}, - "false": {} - }, - "down": { - "true": {}, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/post_medium_horizontal_2.json b/src/main/resources/assets/furenikusroads/blockstates/post_medium_horizontal_2.json deleted file mode 100644 index 49666655..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/post_medium_horizontal_2.json +++ /dev/null @@ -1,75 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:post_medium_horizontal_mid" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:post_medium_horizontal_mid", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "submodel": { - "post_east": { "model": "furenikusroads:post_medium_horizontal_side", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "submodel": { - "post_north": { "model": "furenikusroads:post_medium_horizontal_side" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "post_south": { "model": "furenikusroads:post_medium_horizontal_side", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "post_west": { "model": "furenikusroads:post_medium_horizontal_side", "y": 270 } - } - }, - "false": { - } - }, - "up": { - "true": {}, - "false": {} - }, - "down": { - "true": {}, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/post_medium_vertical.json b/src/main/resources/assets/furenikusroads/blockstates/post_medium_vertical.json deleted file mode 100644 index 7776a359..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/post_medium_vertical.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:post_medium" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:post_medium", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "model": "furenikusroads:post_medium_base", - "submodel": { - "post_east": { "model": "furenikusroads:post_medium_v_to_h", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "model": "furenikusroads:post_medium_base", - "submodel": { - "post_north": { "model": "furenikusroads:post_medium_v_to_h" } - } - }, - "false": { - } - }, - "south": { - "true": { - "model": "furenikusroads:post_medium_base", - "submodel": { - "post_south": { "model": "furenikusroads:post_medium_v_to_h", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "model": "furenikusroads:post_medium_base", - "submodel": { - "post_west": { "model": "furenikusroads:post_medium_v_to_h", "y": 270 } - } - }, - "false": { - } - }, - "up": { - "true": { - "model": "furenikusroads:post_medium_base", - "submodel": { - "post_up": { "model": "furenikusroads:post_medium_up", "y": 270 } - } - }, - "false": { - } - }, - "down": { - "true": { - "submodel": { - "post_down": { "model": "furenikusroads:post_medium_under" } - } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/post_medium_vertical_2.json b/src/main/resources/assets/furenikusroads/blockstates/post_medium_vertical_2.json deleted file mode 100644 index 3c0e396e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/post_medium_vertical_2.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:post_medium" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:post_medium", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "model": "furenikusroads:post_medium_base_2", - "submodel": { - "post_east": { "model": "furenikusroads:post_medium_v_to_h_2", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "model": "furenikusroads:post_medium_base_2", - "submodel": { - "post_north": { "model": "furenikusroads:post_medium_v_to_h_2" } - } - }, - "false": { - } - }, - "south": { - "true": { - "model": "furenikusroads:post_medium_base_2", - "submodel": { - "post_south": { "model": "furenikusroads:post_medium_v_to_h_2", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "model": "furenikusroads:post_medium_base_2", - "submodel": { - "post_west": { "model": "furenikusroads:post_medium_v_to_h_2", "y": 270 } - } - }, - "false": { - } - }, - "up": { - "true": { - "model": "furenikusroads:post_medium_base_2", - "submodel": { - "post_up": { "model": "furenikusroads:post_medium_up_2", "y": 270 } - } - }, - "false": { - } - }, - "down": { - "true": { - "submodel": { - "post_down": { "model": "furenikusroads:post_medium_under" } - } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/post_small_horizontal.json b/src/main/resources/assets/furenikusroads/blockstates/post_small_horizontal.json deleted file mode 100644 index baf1e2ef..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/post_small_horizontal.json +++ /dev/null @@ -1,75 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:post_small_horizontal_mid" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:post_small_horizontal_mid", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "submodel": { - "post_east": { "model": "furenikusroads:post_small_horizontal_side", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "submodel": { - "post_north": { "model": "furenikusroads:post_small_horizontal_side" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "post_south": { "model": "furenikusroads:post_small_horizontal_side", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "post_west": { "model": "furenikusroads:post_small_horizontal_side", "y": 270 } - } - }, - "false": { - } - }, - "up": { - "true": {}, - "false": {} - }, - "down": { - "true": {}, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/post_small_horizontal_2.json b/src/main/resources/assets/furenikusroads/blockstates/post_small_horizontal_2.json deleted file mode 100644 index baf1e2ef..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/post_small_horizontal_2.json +++ /dev/null @@ -1,75 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:post_small_horizontal_mid" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:post_small_horizontal_mid", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "submodel": { - "post_east": { "model": "furenikusroads:post_small_horizontal_side", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "submodel": { - "post_north": { "model": "furenikusroads:post_small_horizontal_side" } - } - }, - "false": { - } - }, - "south": { - "true": { - "submodel": { - "post_south": { "model": "furenikusroads:post_small_horizontal_side", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "submodel": { - "post_west": { "model": "furenikusroads:post_small_horizontal_side", "y": 270 } - } - }, - "false": { - } - }, - "up": { - "true": {}, - "false": {} - }, - "down": { - "true": {}, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/post_small_vertical.json b/src/main/resources/assets/furenikusroads/blockstates/post_small_vertical.json deleted file mode 100644 index 42d52422..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/post_small_vertical.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:post_small" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:post_small", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "model": "furenikusroads:post_small_base", - "submodel": { - "post_east": { "model": "furenikusroads:post_small_v_to_h", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "model": "furenikusroads:post_small_base", - "submodel": { - "post_north": { "model": "furenikusroads:post_small_v_to_h" } - } - }, - "false": { - } - }, - "south": { - "true": { - "model": "furenikusroads:post_small_base", - "submodel": { - "post_south": { "model": "furenikusroads:post_small_v_to_h", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "model": "furenikusroads:post_small_base", - "submodel": { - "post_west": { "model": "furenikusroads:post_small_v_to_h", "y": 270 } - } - }, - "false": { - } - }, - "up": { - "true": { - "model": "furenikusroads:post_small_base", - "submodel": { - "post_up": { "model": "furenikusroads:post_small_up", "y": 270 } - } - }, - "false": { - } - }, - "down": { - "true": { - "submodel": { - "post_down": { "model": "furenikusroads:post_small_under" } - } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/post_small_vertical_2.json b/src/main/resources/assets/furenikusroads/blockstates/post_small_vertical_2.json deleted file mode 100644 index a77ae5b9..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/post_small_vertical_2.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:post_small" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:post_small", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "model": "furenikusroads:post_small_base_2", - "submodel": { - "post_east": { "model": "furenikusroads:post_small_v_to_h_2", "y": 90 } - } - }, - "false": { - } - }, - "north": { - "true": { - "model": "furenikusroads:post_small_base_2", - "submodel": { - "post_north": { "model": "furenikusroads:post_small_v_to_h_2" } - } - }, - "false": { - } - }, - "south": { - "true": { - "model": "furenikusroads:post_small_base_2", - "submodel": { - "post_south": { "model": "furenikusroads:post_small_v_to_h_2", "y": 180 } - } - }, - "false": { - } - }, - "west": { - "true": { - "model": "furenikusroads:post_small_base_2", - "submodel": { - "post_west": { "model": "furenikusroads:post_small_v_to_h_2", "y": 270 } - } - }, - "false": { - } - }, - "up": { - "true": { - "model": "furenikusroads:post_small_base_2", - "submodel": { - "post_up": { "model": "furenikusroads:post_small_up_2", "y": 270 } - } - }, - "false": { - } - }, - "down": { - "true": { - "submodel": { - "post_down": { "model": "furenikusroads:post_small_under" } - } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_arrow.json b/src/main/resources/assets/furenikusroads/blockstates/red_arrow.json deleted file mode 100644 index c914dd8f..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_arrow.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_arrow" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_arrow", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_arrow_4" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:tile_arrow" }, - "1": { "model": "furenikusroads:tile_arrow", "y": 90 }, - "2": { "model": "furenikusroads:tile_arrow", "y": 180 }, - "3": { "model": "furenikusroads:tile_arrow", "y": 270 }, - "4": { "model": "furenikusroads:tile_arrow_side" }, - "5": { "model": "furenikusroads:tile_arrow_side", "y": 90 }, - "6": { "model": "furenikusroads:tile_arrow_side", "y": 180 }, - "7": { "model": "furenikusroads:tile_arrow_side", "y": 270 }, - "8": { "model": "furenikusroads:tile_arrow_side", "x": 270 }, - "9": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 90 }, - "10": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 180 }, - "11": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 270 }, - "12": { "model": "furenikusroads:tile_arrow_side", "x": 270 }, - "13": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 90 }, - "14": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 180 }, - "15": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_arrow_diagonal.json b/src/main/resources/assets/furenikusroads/blockstates/red_arrow_diagonal.json deleted file mode 100644 index 4661fe2c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_arrow_diagonal.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_arrow_diagonal" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_arrow_diagonal" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_arrow_diagonal_4" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:tile_arrow_diagonal" }, - "1": { "model": "furenikusroads:tile_arrow_diagonal", "y": 90 }, - "2": { "model": "furenikusroads:tile_arrow_diagonal", "y": 180 }, - "3": { "model": "furenikusroads:tile_arrow_diagonal", "y": 270 }, - "4": { "model": "furenikusroads:tile_arrow_diagonal_line_full" }, - "5": { "model": "furenikusroads:tile_arrow_diagonal_line_full", "y": 90 }, - "6": { "model": "furenikusroads:tile_arrow_diagonal_line_full", "y": 180 }, - "7": { "model": "furenikusroads:tile_arrow_diagonal_line_full", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_arrow_line.json b/src/main/resources/assets/furenikusroads/blockstates/red_arrow_line.json deleted file mode 100644 index f422e181..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_arrow_line.json +++ /dev/null @@ -1,82 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_arrow_line" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_arrow_line_inv", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { "model": "furenikusroads:tile_arrow_line" }, - "east": { "model": "furenikusroads:tile_arrow_line", "y": 90 }, - "south": { "model": "furenikusroads:tile_arrow_line", "y": 180 }, - "west": { "model": "furenikusroads:tile_arrow_line", "y": 270 } - }, - "connect": { - "none": {}, - "connect_left": { - "model": "furenikusroads:tile_arrow_line_connect_left_full" - }, - "connect_right": { - "model": "furenikusroads:tile_arrow_line_connect_right_full" - }, - "connect_up": { - "submodel": { - "up": { "model": "furenikusroads:tile_arrow_line_connect_up" } - } - }, - "connect_left_right": { - "submodel": { - "left": { "model": "furenikusroads:tile_arrow_line_connect_left" }, - "right": { "model": "furenikusroads:tile_arrow_line_connect_right" } - } - }, - "connect_left_up": { - "submodel": { - "left": { "model": "furenikusroads:tile_arrow_line_connect_left" }, - "up": { "model": "furenikusroads:tile_arrow_line_connect_up" } - } - }, - "connect_right_up": { - "submodel": { - "right": { "model": "furenikusroads:tile_arrow_line_connect_right" }, - "up": { "model": "furenikusroads:tile_arrow_line_connect_up" } - } - }, - "connect_left_right_up": { - "submodel": { - "left": { "model": "furenikusroads:tile_arrow_line_connect_left" }, - "right": { "model": "furenikusroads:tile_arrow_line_connect_right" }, - "up": { "model": "furenikusroads:tile_arrow_line_connect_up" } - } - }, - "connect_left_diagonal": { - "model": "furenikusroads:tile_arrow_line_connect_diagonal_left" - }, - "connect_right_diagonal": { - "model": "furenikusroads:tile_arrow_line_connect_diagonal_right" - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_bike.json b/src/main/resources/assets/furenikusroads/blockstates/red_bike.json deleted file mode 100644 index 08909484..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_bike.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_bike" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_bike" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_bike" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_bike" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_bike" } - }, - "4": { "model": "furenikusroads:text_bike_1" }, - "5": { "model": "furenikusroads:text_bike_1", "y": 90 }, - "6": { "model": "furenikusroads:text_bike_1", "y": 180 }, - "7": { "model": "furenikusroads:text_bike_1", "y": 270 }, - "8": { "model": "furenikusroads:text_bike_2" }, - "9": { "model": "furenikusroads:text_bike_2", "y": 90 }, - "10": { "model": "furenikusroads:text_bike_2", "y": 180 }, - "11": { "model": "furenikusroads:text_bike_2", "y": 270 }, - "12": { "model": "furenikusroads:text_bike_3" }, - "13": { "model": "furenikusroads:text_bike_3", "y": 90 }, - "14": { "model": "furenikusroads:text_bike_3", "y": 180 }, - "15": { "model": "furenikusroads:text_bike_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_bike_icon.json b/src/main/resources/assets/furenikusroads/blockstates/red_bike_icon.json deleted file mode 100644 index a010b673..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_bike_icon.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_bike_icon" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_bike_icon" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_bike_icon" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_bike_icon" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_bike_icon" } - }, - "4": { "model": "furenikusroads:text_bike_icon_1" }, - "5": { "model": "furenikusroads:text_bike_icon_1", "y": 90 }, - "6": { "model": "furenikusroads:text_bike_icon_1", "y": 180 }, - "7": { "model": "furenikusroads:text_bike_icon_1", "y": 270 }, - "8": { "model": "furenikusroads:text_bike_icon_2" }, - "9": { "model": "furenikusroads:text_bike_icon_2", "y": 90 }, - "10": { "model": "furenikusroads:text_bike_icon_2", "y": 180 }, - "11": { "model": "furenikusroads:text_bike_icon_2", "y": 270 }, - "12": { "model": "furenikusroads:text_bike_icon_3" }, - "13": { "model": "furenikusroads:text_bike_icon_3", "y": 90 }, - "14": { "model": "furenikusroads:text_bike_icon_3", "y": 180 }, - "15": { "model": "furenikusroads:text_bike_icon_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_bus.json b/src/main/resources/assets/furenikusroads/blockstates/red_bus.json deleted file mode 100644 index 8e206e92..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_bus.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_bus" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_bus" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_bus" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_bus" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_bus" } - }, - "4": { "model": "furenikusroads:text_bus_1" }, - "5": { "model": "furenikusroads:text_bus_1", "y": 90 }, - "6": { "model": "furenikusroads:text_bus_1", "y": 180 }, - "7": { "model": "furenikusroads:text_bus_1", "y": 270 }, - "8": { "model": "furenikusroads:text_bus_2" }, - "9": { "model": "furenikusroads:text_bus_2", "y": 90 }, - "10": { "model": "furenikusroads:text_bus_2", "y": 180 }, - "11": { "model": "furenikusroads:text_bus_2", "y": 270 }, - "12": { "model": "furenikusroads:text_bus_3" }, - "13": { "model": "furenikusroads:text_bus_3", "y": 90 }, - "14": { "model": "furenikusroads:text_bus_3", "y": 180 }, - "15": { "model": "furenikusroads:text_bus_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_a.json b/src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_a.json deleted file mode 100644 index 6c42be0a..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_a.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_chevron_left_a" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_left_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_a_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_a" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_a_thin.json b/src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_a_thin.json deleted file mode 100644 index a002d7df..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_a_thin.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_chevron_left_a_thin" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_left_a_thin", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_a_thin_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_a_thin" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_b.json b/src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_b.json deleted file mode 100644 index 19e1fdaf..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_b.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_chevron_left_b" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_left_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_b_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_b" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_b_thin.json b/src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_b_thin.json deleted file mode 100644 index 1fdd00f3..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_left_b_thin.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_chevron_left_b_thin" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_left_b_thin", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_b_thin_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_b_thin" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_mid.json b/src/main/resources/assets/furenikusroads/blockstates/red_chevron_mid.json deleted file mode 100644 index aa6b9ab4..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_mid.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_chevron_mid_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_mid_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_chevron_mid_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_chevron_mid_thin_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_4": [{ - "model": "furenikusroads:junction_chevron_mid_thin_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_chevron_mid_1" }, - "1": { "model": "furenikusroads:junction_chevron_mid_1", "y": 90 }, - "2": { "model": "furenikusroads:junction_chevron_mid_1", "y": 180 }, - "3": { "model": "furenikusroads:junction_chevron_mid_1", "y": 270 }, - "4": { "model": "furenikusroads:junction_chevron_mid_2" }, - "5": { "model": "furenikusroads:junction_chevron_mid_2", "y": 90 }, - "6": { "model": "furenikusroads:junction_chevron_mid_2", "y": 180 }, - "7": { "model": "furenikusroads:junction_chevron_mid_2", "y": 270 }, - "8": { "model": "furenikusroads:junction_chevron_mid_thin_1" }, - "9": { "model": "furenikusroads:junction_chevron_mid_thin_1", "y": 90 }, - "10": { "model": "furenikusroads:junction_chevron_mid_thin_1", "y": 180 }, - "11": { "model": "furenikusroads:junction_chevron_mid_thin_1", "y": 270 }, - "12": { "model": "furenikusroads:junction_chevron_mid_thin_2" }, - "13": { "model": "furenikusroads:junction_chevron_mid_thin_2", "y": 90 }, - "14": { "model": "furenikusroads:junction_chevron_mid_thin_2", "y": 180 }, - "15": { "model": "furenikusroads:junction_chevron_mid_thin_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_mid_left.json b/src/main/resources/assets/furenikusroads/blockstates/red_chevron_mid_left.json deleted file mode 100644 index b42e3bcd..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_mid_left.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_chevron_mid_left_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_mid_left_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_chevron_mid_left_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_chevron_mid_left_thin_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_4": [{ - "model": "furenikusroads:junction_chevron_mid_left_thin_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_chevron_mid_left_1" }, - "1": { "model": "furenikusroads:junction_chevron_mid_left_1", "y": 90 }, - "2": { "model": "furenikusroads:junction_chevron_mid_left_1", "y": 180 }, - "3": { "model": "furenikusroads:junction_chevron_mid_left_1", "y": 270 }, - "4": { "model": "furenikusroads:junction_chevron_mid_left_2" }, - "5": { "model": "furenikusroads:junction_chevron_mid_left_2", "y": 90 }, - "6": { "model": "furenikusroads:junction_chevron_mid_left_2", "y": 180 }, - "7": { "model": "furenikusroads:junction_chevron_mid_left_2", "y": 270 }, - "8": { "model": "furenikusroads:junction_chevron_mid_left_thin_1" }, - "9": { "model": "furenikusroads:junction_chevron_mid_left_thin_1", "y": 90 }, - "10": { "model": "furenikusroads:junction_chevron_mid_left_thin_1", "y": 180 }, - "11": { "model": "furenikusroads:junction_chevron_mid_left_thin_1", "y": 270 }, - "12": { "model": "furenikusroads:junction_chevron_mid_left_thin_2" }, - "13": { "model": "furenikusroads:junction_chevron_mid_left_thin_2", "y": 90 }, - "14": { "model": "furenikusroads:junction_chevron_mid_left_thin_2", "y": 180 }, - "15": { "model": "furenikusroads:junction_chevron_mid_left_thin_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_mid_right.json b/src/main/resources/assets/furenikusroads/blockstates/red_chevron_mid_right.json deleted file mode 100644 index a293450a..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_mid_right.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_chevron_mid_right_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_mid_right_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_chevron_mid_right_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_chevron_mid_right_thin_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_4": [{ - "model": "furenikusroads:junction_chevron_mid_right_thin_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_chevron_mid_right_1" }, - "1": { "model": "furenikusroads:junction_chevron_mid_right_1", "y": 90 }, - "2": { "model": "furenikusroads:junction_chevron_mid_right_1", "y": 180 }, - "3": { "model": "furenikusroads:junction_chevron_mid_right_1", "y": 270 }, - "4": { "model": "furenikusroads:junction_chevron_mid_right_2" }, - "5": { "model": "furenikusroads:junction_chevron_mid_right_2", "y": 90 }, - "6": { "model": "furenikusroads:junction_chevron_mid_right_2", "y": 180 }, - "7": { "model": "furenikusroads:junction_chevron_mid_right_2", "y": 270 }, - "8": { "model": "furenikusroads:junction_chevron_mid_right_thin_1" }, - "9": { "model": "furenikusroads:junction_chevron_mid_right_thin_1", "y": 90 }, - "10": { "model": "furenikusroads:junction_chevron_mid_right_thin_1", "y": 180 }, - "11": { "model": "furenikusroads:junction_chevron_mid_right_thin_1", "y": 270 }, - "12": { "model": "furenikusroads:junction_chevron_mid_right_thin_2" }, - "13": { "model": "furenikusroads:junction_chevron_mid_right_thin_2", "y": 90 }, - "14": { "model": "furenikusroads:junction_chevron_mid_right_thin_2", "y": 180 }, - "15": { "model": "furenikusroads:junction_chevron_mid_right_thin_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_a.json b/src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_a.json deleted file mode 100644 index 8b84f3bd..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_a.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_chevron_right_a" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_right_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_a_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_a" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_a_thin.json b/src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_a_thin.json deleted file mode 100644 index 3a87bdcd..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_a_thin.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_chevron_right_a_thin" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_right_a_thin", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_a_thin_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_a_thin" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_b.json b/src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_b.json deleted file mode 100644 index a51aa87a..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_b.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_chevron_right_b" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_right_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_b_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_b" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_b_thin.json b/src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_b_thin.json deleted file mode 100644 index 4a4e0eac..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_right_b_thin.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_chevron_right_b_thin" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_right_b_thin", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_b_thin_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_b_thin" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_side_line.json b/src/main/resources/assets/furenikusroads/blockstates/red_chevron_side_line.json deleted file mode 100644 index 1862320b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_chevron_side_line.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:chevron_side_line_down_a" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:chevron_side_line_down_a", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "1": "furenikusroads:blocks/paint_red", - "2": "furenikusroads:blocks/paint_red", - "3": "furenikusroads:blocks/blank", - "4": "furenikusroads:blocks/blank" - }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "type_rotation": { - "down_n_a": { "model": "furenikusroads:chevron_side_line_down_a" }, - "down_e_a": { "model": "furenikusroads:chevron_side_line_down_a", "y": 90 }, - "down_s_a": { "model": "furenikusroads:chevron_side_line_down_a", "y": 180 }, - "down_w_a": { "model": "furenikusroads:chevron_side_line_down_a", "y": 270 }, - - "down_n_b": { "model": "furenikusroads:chevron_side_line_down_b" }, - "down_e_b": { "model": "furenikusroads:chevron_side_line_down_b", "y": 90 }, - "down_s_b": { "model": "furenikusroads:chevron_side_line_down_b", "y": 180 }, - "down_w_b": { "model": "furenikusroads:chevron_side_line_down_b", "y": 270 }, - - "up_n_a": { "model": "furenikusroads:chevron_side_line_up_a" }, - "up_e_a": { "model": "furenikusroads:chevron_side_line_up_a", "y": 90 }, - "up_s_a": { "model": "furenikusroads:chevron_side_line_up_a", "y": 180 }, - "up_w_a": { "model": "furenikusroads:chevron_side_line_up_a", "y": 270 }, - - "up_n_b": { "model": "furenikusroads:chevron_side_line_up_b" }, - "up_e_b": { "model": "furenikusroads:chevron_side_line_up_b", "y": 90 }, - "up_s_b": { "model": "furenikusroads:chevron_side_line_up_b", "y": 180 }, - "up_w_b": { "model": "furenikusroads:chevron_side_line_up_b", "y": 270 } - }, - - "connect": { - "none": { - "textures": { - "0": "furenikusroads:blocks/paint_red", - "1": "furenikusroads:blocks/blank", - "2": "furenikusroads:blocks/blank", - "3": "furenikusroads:blocks/paint_red", - "4": "furenikusroads:blocks/paint_red" - } - }, - - "line_left": { - "textures": { - "0": "furenikusroads:blocks/paint_red", - "1": "furenikusroads:blocks/paint_red", - "2": "furenikusroads:blocks/blank", - "3": "furenikusroads:blocks/blank", - "4": "furenikusroads:blocks/paint_red" - } - }, - "line_right": { - "textures": { - "0": "furenikusroads:blocks/paint_red", - "1": "furenikusroads:blocks/blank", - "2": "furenikusroads:blocks/paint_red", - "3": "furenikusroads:blocks/paint_red", - "4": "furenikusroads:blocks/blank" - } - }, - "line_both": { - "textures": { - "0": "furenikusroads:blocks/paint_red", - "1": "furenikusroads:blocks/paint_red", - "2": "furenikusroads:blocks/paint_red", - "3": "furenikusroads:blocks/blank", - "4": "furenikusroads:blocks/blank" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_city.json b/src/main/resources/assets/furenikusroads/blockstates/red_city.json deleted file mode 100644 index f0ab9b44..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_city.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_city" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_city" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_city" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_city" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_city" } - }, - "4": { "model": "furenikusroads:text_city_1" }, - "5": { "model": "furenikusroads:text_city_1", "y": 90 }, - "6": { "model": "furenikusroads:text_city_1", "y": 180 }, - "7": { "model": "furenikusroads:text_city_1", "y": 270 }, - "8": { "model": "furenikusroads:text_city_2" }, - "9": { "model": "furenikusroads:text_city_2", "y": 90 }, - "10": { "model": "furenikusroads:text_city_2", "y": 180 }, - "11": { "model": "furenikusroads:text_city_2", "y": 270 }, - "12": { "model": "furenikusroads:text_city_3" }, - "13": { "model": "furenikusroads:text_city_3", "y": 90 }, - "14": { "model": "furenikusroads:text_city_3", "y": 180 }, - "15": { "model": "furenikusroads:text_city_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_clear.json b/src/main/resources/assets/furenikusroads/blockstates/red_clear.json deleted file mode 100644 index 3d8b77f4..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_clear.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_clear" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_clear" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_clear" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_clear" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_clear" } - }, - "4": { "model": "furenikusroads:text_clear_1" }, - "5": { "model": "furenikusroads:text_clear_1", "y": 90 }, - "6": { "model": "furenikusroads:text_clear_1", "y": 180 }, - "7": { "model": "furenikusroads:text_clear_1", "y": 270 }, - "8": { "model": "furenikusroads:text_clear_2" }, - "9": { "model": "furenikusroads:text_clear_2", "y": 90 }, - "10": { "model": "furenikusroads:text_clear_2", "y": 180 }, - "11": { "model": "furenikusroads:text_clear_2", "y": 270 }, - "12": { "model": "furenikusroads:text_clear_3" }, - "13": { "model": "furenikusroads:text_clear_3", "y": 90 }, - "14": { "model": "furenikusroads:text_clear_3", "y": 180 }, - "15": { "model": "furenikusroads:text_clear_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_crossing_paint.json b/src/main/resources/assets/furenikusroads/blockstates/red_crossing_paint.json deleted file mode 100644 index bba005b0..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_crossing_paint.json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:crossing_paint" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_crossing_paint" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "model": "furenikusroads:crossing_paint_edge", "y": 270 - }, - "false": { - } - }, - "north": { - "true": { - "model": "furenikusroads:crossing_paint_edge", "y": 180 - }, - "false": { - } - }, - "south": { - "true": { - "model": "furenikusroads:crossing_paint_edge" - }, - "false": { - } - }, - "west": { - "true": { - "model": "furenikusroads:crossing_paint_edge", "y": 90 - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_ctre.json b/src/main/resources/assets/furenikusroads/blockstates/red_ctre.json deleted file mode 100644 index 3571b002..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_ctre.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_ctre" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_ctre" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_ctre" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_ctre" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_ctre" } - }, - "4": { "model": "furenikusroads:text_ctre_1" }, - "5": { "model": "furenikusroads:text_ctre_1", "y": 90 }, - "6": { "model": "furenikusroads:text_ctre_1", "y": 180 }, - "7": { "model": "furenikusroads:text_ctre_1", "y": 270 }, - "8": { "model": "furenikusroads:text_ctre_2" }, - "9": { "model": "furenikusroads:text_ctre_2", "y": 90 }, - "10": { "model": "furenikusroads:text_ctre_2", "y": 180 }, - "11": { "model": "furenikusroads:text_ctre_2", "y": 270 }, - "12": { "model": "furenikusroads:text_ctre_3" }, - "13": { "model": "furenikusroads:text_ctre_3", "y": 90 }, - "14": { "model": "furenikusroads:text_ctre_3", "y": 180 }, - "15": { "model": "furenikusroads:text_ctre_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_entry.json b/src/main/resources/assets/furenikusroads/blockstates/red_entry.json deleted file mode 100644 index 522491fd..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_entry.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_entry" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_entry" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_entry" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_entry" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_entry" } - }, - "4": { "model": "furenikusroads:text_entry_1" }, - "5": { "model": "furenikusroads:text_entry_1", "y": 90 }, - "6": { "model": "furenikusroads:text_entry_1", "y": 180 }, - "7": { "model": "furenikusroads:text_entry_1", "y": 270 }, - "8": { "model": "furenikusroads:text_entry_2" }, - "9": { "model": "furenikusroads:text_entry_2", "y": 90 }, - "10": { "model": "furenikusroads:text_entry_2", "y": 180 }, - "11": { "model": "furenikusroads:text_entry_2", "y": 270 }, - "12": { "model": "furenikusroads:text_entry_3" }, - "13": { "model": "furenikusroads:text_entry_3", "y": 90 }, - "14": { "model": "furenikusroads:text_entry_3", "y": 180 }, - "15": { "model": "furenikusroads:text_entry_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_give_way.json b/src/main/resources/assets/furenikusroads/blockstates/red_give_way.json deleted file mode 100644 index 4a34a2e9..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_give_way.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:icon_give_way_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_give_way" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "n1": { "model": "furenikusroads:icon_give_way_1" }, - "e1": { "model": "furenikusroads:icon_give_way_1", "y": 90 }, - "s1": { "model": "furenikusroads:icon_give_way_1", "y": 180 }, - "w1": { "model": "furenikusroads:icon_give_way_1", "y": 270 }, - "n2": { "model": "furenikusroads:icon_give_way_2" }, - "e2": { "model": "furenikusroads:icon_give_way_2", "y": 90 }, - "s2": { "model": "furenikusroads:icon_give_way_2", "y": 180 }, - "w2": { "model": "furenikusroads:icon_give_way_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_junction_a.json b/src/main/resources/assets/furenikusroads/blockstates/red_junction_a.json deleted file mode 100644 index 023f038f..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_junction_a.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_in_a" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_in_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_out_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_mid_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_in_a" }, - "1": { "model": "furenikusroads:junction_in_a", "y": 90 }, - "2": { "model": "furenikusroads:junction_in_a", "y": 180 }, - "3": { "model": "furenikusroads:junction_in_a", "y": 270 }, - "4": { "model": "furenikusroads:junction_out_a" }, - "5": { "model": "furenikusroads:junction_out_a", "y": 90 }, - "6": { "model": "furenikusroads:junction_out_a", "y": 180 }, - "7": { "model": "furenikusroads:junction_out_a", "y": 270 }, - "8": { "model": "furenikusroads:junction_mid_a" }, - "9": { "model": "furenikusroads:junction_mid_a", "y": 90 }, - "10": { "model": "furenikusroads:junction_mid_a", "y": 180 }, - "11": { "model": "furenikusroads:junction_mid_a", "y": 270 }, - "12": { "model": "furenikusroads:nomodel" }, - "13": { "model": "furenikusroads:nomodel" }, - "14": { "model": "furenikusroads:nomodel" }, - "15": { "model": "furenikusroads:nomodel" } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_junction_b.json b/src/main/resources/assets/furenikusroads/blockstates/red_junction_b.json deleted file mode 100644 index 45e717d8..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_junction_b.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_in_b" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_in_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_out_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_mid_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_in_b" }, - "1": { "model": "furenikusroads:junction_in_b", "y": 90 }, - "2": { "model": "furenikusroads:junction_in_b", "y": 180 }, - "3": { "model": "furenikusroads:junction_in_b", "y": 270 }, - "4": { "model": "furenikusroads:junction_out_b" }, - "5": { "model": "furenikusroads:junction_out_b", "y": 90 }, - "6": { "model": "furenikusroads:junction_out_b", "y": 180 }, - "7": { "model": "furenikusroads:junction_out_b", "y": 270 }, - "8": { "model": "furenikusroads:junction_mid_b" }, - "9": { "model": "furenikusroads:junction_mid_b", "y": 90 }, - "10": { "model": "furenikusroads:junction_mid_b", "y": 180 }, - "11": { "model": "furenikusroads:junction_mid_b", "y": 270 }, - "12": { "model": "furenikusroads:nomodel" }, - "13": { "model": "furenikusroads:nomodel" }, - "14": { "model": "furenikusroads:nomodel" }, - "15": { "model": "furenikusroads:nomodel" } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_left.json b/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_left.json deleted file mode 100644 index 49429002..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_left.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "1": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_filter_left_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_junction_filter_left" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:junction_filter_left_4" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_left_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_left_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_left_1" }, - - "east_top": { "model": "furenikusroads:junction_filter_left_4", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_left_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_left_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_left_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:junction_filter_left_4", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_left_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_left_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_left_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:junction_filter_left_4", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_left_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_left_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_left_1", "y": 270 } - }, - - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_left_empty.json b/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_left_empty.json deleted file mode 100644 index 3b33dbd7..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_left_empty.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "1": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_junction_filter_left_empty" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:nomodel" }, - "north_bottom_mid": { "model": "furenikusroads:nomodel" }, - "north_bottom": { "model": "furenikusroads:nomodel" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_bottom": { "model": "furenikusroads:nomodel", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_bottom": { "model": "furenikusroads:nomodel", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_bottom": { "model": "furenikusroads:nomodel", "y": 270 } - }, - - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_left_thin.json b/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_left_thin.json deleted file mode 100644 index 68bdbf8f..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_left_thin.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "1": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_filter_left_thin_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_junction_filter_left_thin" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:junction_filter_left_thin_4" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_left_thin_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_left_thin_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_left_thin_1" }, - - "east_top": { "model": "furenikusroads:junction_filter_left_thin_4", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_left_thin_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_left_thin_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_left_thin_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:junction_filter_left_thin_4", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_left_thin_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_left_thin_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_left_thin_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:junction_filter_left_thin_4", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_left_thin_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_left_thin_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_left_thin_1", "y": 270 } - }, - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_right.json b/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_right.json deleted file mode 100644 index e52623e8..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_right.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "1": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_filter_right_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_junction_filter_right" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:junction_filter_right_4" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_right_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_right_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_right_1" }, - - "east_top": { "model": "furenikusroads:junction_filter_right_4", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_right_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_right_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_right_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:junction_filter_right_4", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_right_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_right_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_right_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:junction_filter_right_4", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_right_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_right_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_right_1", "y": 270 } - }, - - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_right_empty.json b/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_right_empty.json deleted file mode 100644 index 2e77edd7..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_right_empty.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "1": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_junction_filter_right_empty" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:nomodel" }, - "north_bottom_mid": { "model": "furenikusroads:nomodel" }, - "north_bottom": { "model": "furenikusroads:nomodel" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_bottom": { "model": "furenikusroads:nomodel", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_bottom": { "model": "furenikusroads:nomodel", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_bottom": { "model": "furenikusroads:nomodel", "y": 270 } - }, - - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_right_thin.json b/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_right_thin.json deleted file mode 100644 index 594367c0..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_junction_filter_right_thin.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "1": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_filter_right_thin_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_junction_filter_right_thin" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:junction_filter_right_thin_4" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_right_thin_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_right_thin_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_right_thin_1" }, - - "east_top": { "model": "furenikusroads:junction_filter_right_thin_4", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_right_thin_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_right_thin_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_right_thin_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:junction_filter_right_thin_4", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_right_thin_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_right_thin_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_right_thin_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:junction_filter_right_thin_4", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_right_thin_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_right_thin_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_right_thin_1", "y": 270 } - }, - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_chevron_mid.json b/src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_chevron_mid.json deleted file mode 100644 index e28fdbf0..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_chevron_mid.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_filter_chevron_mid_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_junction_fork_chevron_mid" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_1" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_1", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_chevron_mid_thin.json b/src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_chevron_mid_thin.json deleted file mode 100644 index 8668601e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_chevron_mid_thin.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_filter_chevron_mid_thin_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_junction_fork_chevron_mid_thin" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_thin_1" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_thin_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_thin_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_thin_1", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_mid.json b/src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_mid.json deleted file mode 100644 index 44d55834..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_mid.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_filter_mid_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_junction_fork_mid" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_mid_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_mid_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_mid_1" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_mid_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_mid_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_mid_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_mid_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_mid_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_mid_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_mid_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_mid_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_mid_1", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_mid_thin.json b/src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_mid_thin.json deleted file mode 100644 index 492afa7e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_junction_fork_mid_thin.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:junction_filter_mid_thin_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_junction_fork_mid_thin" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_mid_thin_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_mid_thin_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_mid_thin_1" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_mid_thin_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_mid_thin_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_mid_thin_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_mid_thin_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_mid_thin_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_mid_thin_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_mid_thin_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_mid_thin_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_mid_thin_1", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_keep.json b/src/main/resources/assets/furenikusroads/blockstates/red_keep.json deleted file mode 100644 index cb957eed..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_keep.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_keep" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_keep" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_keep" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_keep" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_keep" } - }, - "4": { "model": "furenikusroads:text_keep_1" }, - "5": { "model": "furenikusroads:text_keep_1", "y": 90 }, - "6": { "model": "furenikusroads:text_keep_1", "y": 180 }, - "7": { "model": "furenikusroads:text_keep_1", "y": 270 }, - "8": { "model": "furenikusroads:text_keep_2" }, - "9": { "model": "furenikusroads:text_keep_2", "y": 90 }, - "10": { "model": "furenikusroads:text_keep_2", "y": 180 }, - "11": { "model": "furenikusroads:text_keep_2", "y": 270 }, - "12": { "model": "furenikusroads:text_keep_3" }, - "13": { "model": "furenikusroads:text_keep_3", "y": 90 }, - "14": { "model": "furenikusroads:text_keep_3", "y": 180 }, - "15": { "model": "furenikusroads:text_keep_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_lane.json b/src/main/resources/assets/furenikusroads/blockstates/red_lane.json deleted file mode 100644 index c0f63c42..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_lane.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_lane" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_lane" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_lane" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_lane" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_lane" } - }, - "4": { "model": "furenikusroads:text_lane_1" }, - "5": { "model": "furenikusroads:text_lane_1", "y": 90 }, - "6": { "model": "furenikusroads:text_lane_1", "y": 180 }, - "7": { "model": "furenikusroads:text_lane_1", "y": 270 }, - "8": { "model": "furenikusroads:text_lane_2" }, - "9": { "model": "furenikusroads:text_lane_2", "y": 90 }, - "10": { "model": "furenikusroads:text_lane_2", "y": 180 }, - "11": { "model": "furenikusroads:text_lane_2", "y": 270 }, - "12": { "model": "furenikusroads:text_lane_3" }, - "13": { "model": "furenikusroads:text_lane_3", "y": 90 }, - "14": { "model": "furenikusroads:text_lane_3", "y": 180 }, - "15": { "model": "furenikusroads:text_lane_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_left.json b/src/main/resources/assets/furenikusroads/blockstates/red_left.json deleted file mode 100644 index fa1875b3..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_left.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_left" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_left" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_left" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_left" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_left" } - }, - "4": { "model": "furenikusroads:text_left_1" }, - "5": { "model": "furenikusroads:text_left_1", "y": 90 }, - "6": { "model": "furenikusroads:text_left_1", "y": 180 }, - "7": { "model": "furenikusroads:text_left_1", "y": 270 }, - "8": { "model": "furenikusroads:text_left_2" }, - "9": { "model": "furenikusroads:text_left_2", "y": 90 }, - "10": { "model": "furenikusroads:text_left_2", "y": 180 }, - "11": { "model": "furenikusroads:text_left_2", "y": 270 }, - "12": { "model": "furenikusroads:text_left_3" }, - "13": { "model": "furenikusroads:text_left_3", "y": 90 }, - "14": { "model": "furenikusroads:text_left_3", "y": 180 }, - "15": { "model": "furenikusroads:text_left_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_merge_arrow.json b/src/main/resources/assets/furenikusroads/blockstates/red_merge_arrow.json deleted file mode 100644 index d621d436..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_merge_arrow.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:icon_merge_arrow_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_merge_arrow" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "n1": { "model": "furenikusroads:icon_merge_arrow_1" }, - "e1": { "model": "furenikusroads:icon_merge_arrow_1", "y": 90 }, - "s1": { "model": "furenikusroads:icon_merge_arrow_1", "y": 180 }, - "w1": { "model": "furenikusroads:icon_merge_arrow_1", "y": 270 }, - "n2": { "model": "furenikusroads:icon_merge_arrow_2" }, - "e2": { "model": "furenikusroads:icon_merge_arrow_2", "y": 90 }, - "s2": { "model": "furenikusroads:icon_merge_arrow_2", "y": 180 }, - "w2": { "model": "furenikusroads:icon_merge_arrow_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_no.json b/src/main/resources/assets/furenikusroads/blockstates/red_no.json deleted file mode 100644 index 6f681064..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_no.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_no" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_no" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_no" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_no" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_no" } - }, - "4": { "model": "furenikusroads:text_no_1" }, - "5": { "model": "furenikusroads:text_no_1", "y": 90 }, - "6": { "model": "furenikusroads:text_no_1", "y": 180 }, - "7": { "model": "furenikusroads:text_no_1", "y": 270 }, - "8": { "model": "furenikusroads:text_no_2" }, - "9": { "model": "furenikusroads:text_no_2", "y": 90 }, - "10": { "model": "furenikusroads:text_no_2", "y": 180 }, - "11": { "model": "furenikusroads:text_no_2", "y": 270 }, - "12": { "model": "furenikusroads:text_no_3" }, - "13": { "model": "furenikusroads:text_no_3", "y": 90 }, - "14": { "model": "furenikusroads:text_no_3", "y": 180 }, - "15": { "model": "furenikusroads:text_no_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_only.json b/src/main/resources/assets/furenikusroads/blockstates/red_only.json deleted file mode 100644 index 022aef15..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_only.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_only" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_only" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_only" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_only" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_only" } - }, - "4": { "model": "furenikusroads:text_only_1" }, - "5": { "model": "furenikusroads:text_only_1", "y": 90 }, - "6": { "model": "furenikusroads:text_only_1", "y": 180 }, - "7": { "model": "furenikusroads:text_only_1", "y": 270 }, - "8": { "model": "furenikusroads:text_only_2" }, - "9": { "model": "furenikusroads:text_only_2", "y": 90 }, - "10": { "model": "furenikusroads:text_only_2", "y": 180 }, - "11": { "model": "furenikusroads:text_only_2", "y": 270 }, - "12": { "model": "furenikusroads:text_only_3" }, - "13": { "model": "furenikusroads:text_only_3", "y": 90 }, - "14": { "model": "furenikusroads:text_only_3", "y": 180 }, - "15": { "model": "furenikusroads:text_only_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_pedestrian.json b/src/main/resources/assets/furenikusroads/blockstates/red_pedestrian.json deleted file mode 100644 index af0b6f2b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_pedestrian.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:icon_pedestrian_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/red_pedestrian" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "n1": { "model": "furenikusroads:icon_pedestrian_1" }, - "e1": { "model": "furenikusroads:icon_pedestrian_1", "y": 90 }, - "s1": { "model": "furenikusroads:icon_pedestrian_1", "y": 180 }, - "w1": { "model": "furenikusroads:icon_pedestrian_1", "y": 270 }, - "n2": { "model": "furenikusroads:icon_pedestrian_2" }, - "e2": { "model": "furenikusroads:icon_pedestrian_2", "y": 90 }, - "s2": { "model": "furenikusroads:icon_pedestrian_2", "y": 180 }, - "w2": { "model": "furenikusroads:icon_pedestrian_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_right.json b/src/main/resources/assets/furenikusroads/blockstates/red_right.json deleted file mode 100644 index 34b70d6d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_right.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_right" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_right" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_right" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_right" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_right" } - }, - "4": { "model": "furenikusroads:text_right_1" }, - "5": { "model": "furenikusroads:text_right_1", "y": 90 }, - "6": { "model": "furenikusroads:text_right_1", "y": 180 }, - "7": { "model": "furenikusroads:text_right_1", "y": 270 }, - "8": { "model": "furenikusroads:text_right_2" }, - "9": { "model": "furenikusroads:text_right_2", "y": 90 }, - "10": { "model": "furenikusroads:text_right_2", "y": 180 }, - "11": { "model": "furenikusroads:text_right_2", "y": 270 }, - "12": { "model": "furenikusroads:text_right_3" }, - "13": { "model": "furenikusroads:text_right_3", "y": 90 }, - "14": { "model": "furenikusroads:text_right_3", "y": 180 }, - "15": { "model": "furenikusroads:text_right_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_slow.json b/src/main/resources/assets/furenikusroads/blockstates/red_slow.json deleted file mode 100644 index 37b777e9..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_slow.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_slow" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_slow" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_slow" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_slow" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_slow" } - }, - "4": { "model": "furenikusroads:text_slow_1" }, - "5": { "model": "furenikusroads:text_slow_1", "y": 90 }, - "6": { "model": "furenikusroads:text_slow_1", "y": 180 }, - "7": { "model": "furenikusroads:text_slow_1", "y": 270 }, - "8": { "model": "furenikusroads:text_slow_2" }, - "9": { "model": "furenikusroads:text_slow_2", "y": 90 }, - "10": { "model": "furenikusroads:text_slow_2", "y": 180 }, - "11": { "model": "furenikusroads:text_slow_2", "y": 270 }, - "12": { "model": "furenikusroads:text_slow_3" }, - "13": { "model": "furenikusroads:text_slow_3", "y": 90 }, - "14": { "model": "furenikusroads:text_slow_3", "y": 180 }, - "15": { "model": "furenikusroads:text_slow_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_stop.json b/src/main/resources/assets/furenikusroads/blockstates/red_stop.json deleted file mode 100644 index 39a13ab5..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_stop.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_stop" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_stop" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_stop" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_stop" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_stop" } - }, - "4": { "model": "furenikusroads:text_stop_1" }, - "5": { "model": "furenikusroads:text_stop_1", "y": 90 }, - "6": { "model": "furenikusroads:text_stop_1", "y": 180 }, - "7": { "model": "furenikusroads:text_stop_1", "y": 270 }, - "8": { "model": "furenikusroads:text_stop_2" }, - "9": { "model": "furenikusroads:text_stop_2", "y": 90 }, - "10": { "model": "furenikusroads:text_stop_2", "y": 180 }, - "11": { "model": "furenikusroads:text_stop_2", "y": 270 }, - "12": { "model": "furenikusroads:text_stop_3" }, - "13": { "model": "furenikusroads:text_stop_3", "y": 90 }, - "14": { "model": "furenikusroads:text_stop_3", "y": 180 }, - "15": { "model": "furenikusroads:text_stop_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_taxi.json b/src/main/resources/assets/furenikusroads/blockstates/red_taxi.json deleted file mode 100644 index b4e6fafa..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_taxi.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_taxi" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_taxi" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_taxi" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_taxi" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_taxi" } - }, - "4": { "model": "furenikusroads:text_taxi_1" }, - "5": { "model": "furenikusroads:text_taxi_1", "y": 90 }, - "6": { "model": "furenikusroads:text_taxi_1", "y": 180 }, - "7": { "model": "furenikusroads:text_taxi_1", "y": 270 }, - "8": { "model": "furenikusroads:text_taxi_2" }, - "9": { "model": "furenikusroads:text_taxi_2", "y": 90 }, - "10": { "model": "furenikusroads:text_taxi_2", "y": 180 }, - "11": { "model": "furenikusroads:text_taxi_2", "y": 270 }, - "12": { "model": "furenikusroads:text_taxi_3" }, - "13": { "model": "furenikusroads:text_taxi_3", "y": 90 }, - "14": { "model": "furenikusroads:text_taxi_3", "y": 180 }, - "15": { "model": "furenikusroads:text_taxi_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_town.json b/src/main/resources/assets/furenikusroads/blockstates/red_town.json deleted file mode 100644 index 55f0bf9b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_town.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_town" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_town" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_town" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_town" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_town" } - }, - "4": { "model": "furenikusroads:text_town_1" }, - "5": { "model": "furenikusroads:text_town_1", "y": 90 }, - "6": { "model": "furenikusroads:text_town_1", "y": 180 }, - "7": { "model": "furenikusroads:text_town_1", "y": 270 }, - "8": { "model": "furenikusroads:text_town_2" }, - "9": { "model": "furenikusroads:text_town_2", "y": 90 }, - "10": { "model": "furenikusroads:text_town_2", "y": 180 }, - "11": { "model": "furenikusroads:text_town_2", "y": 270 }, - "12": { "model": "furenikusroads:text_town_3" }, - "13": { "model": "furenikusroads:text_town_3", "y": 90 }, - "14": { "model": "furenikusroads:text_town_3", "y": 180 }, - "15": { "model": "furenikusroads:text_town_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/red_turn.json b/src/main/resources/assets/furenikusroads/blockstates/red_turn.json deleted file mode 100644 index b8685c74..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/red_turn.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_red", - "particle": "furenikusroads:blocks/paint_red" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_turn" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/red_turn" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/red_turn" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/red_turn" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/red_turn" } - }, - "4": { "model": "furenikusroads:text_turn_1" }, - "5": { "model": "furenikusroads:text_turn_1", "y": 90 }, - "6": { "model": "furenikusroads:text_turn_1", "y": 180 }, - "7": { "model": "furenikusroads:text_turn_1", "y": 270 }, - "8": { "model": "furenikusroads:text_turn_2" }, - "9": { "model": "furenikusroads:text_turn_2", "y": 90 }, - "10": { "model": "furenikusroads:text_turn_2", "y": 180 }, - "11": { "model": "furenikusroads:text_turn_2", "y": 270 }, - "12": { "model": "furenikusroads:text_turn_3" }, - "13": { "model": "furenikusroads:text_turn_3", "y": 90 }, - "14": { "model": "furenikusroads:text_turn_3", "y": 180 }, - "15": { "model": "furenikusroads:text_turn_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_.json deleted file mode 100644 index 7fc27b19..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_blue", - "particle": "furenikusroads:blocks/road_block_blue" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "1_16th": { "model": "furenikusroads:road_1_16" }, - "1_8th": { "model": "furenikusroads:road_2_16" }, - "3_16ths": { "model": "furenikusroads:road_3_16" }, - "quarter_block": { "model": "furenikusroads:road_4_16" }, - "5_16ths": { "model": "furenikusroads:road_5_16" }, - "6_16ths": { "model": "furenikusroads:road_6_16" }, - "7_16ths": { "model": "furenikusroads:road_7_16" }, - "half_block": { "model": "furenikusroads:road_8_16" }, - "9_16ths": { "model": "furenikusroads:road_9_16" }, - "10_16ths": { "model": "furenikusroads:road_10_16" }, - "11_16ths": { "model": "furenikusroads:road_11_16" }, - "three_quarter_block": { "model": "furenikusroads:road_12_16" }, - "13_16ths": { "model": "furenikusroads:road_13_16" }, - "14_16ths": { "model": "furenikusroads:road_14_16" }, - "15_16ths": { "model": "furenikusroads:road_15_16" }, - "full_block": { "model": "furenikusroads:road_16_16" } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_blue.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_blue.json deleted file mode 100644 index 08e4cac2..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_blue.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_blue", - "particle": "furenikusroads:blocks/road_block_blue" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_blue" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_concrete_1.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_concrete_1.json deleted file mode 100644 index c4e79252..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_concrete_1.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1", - "particle": "furenikusroads:blocks/road_block_concrete_1" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_concrete_1" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_concrete_2.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_concrete_2.json deleted file mode 100644 index 4b611f4d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_concrete_2.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2", - "particle": "furenikusroads:blocks/road_block_concrete_2" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_concrete_2" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_dark.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_dark.json deleted file mode 100644 index 107fd6f1..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_dark.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_dark", - "particle": "furenikusroads:blocks/road_block_dark" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_dark" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_1.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_1.json deleted file mode 100644 index fb794806..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_1.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:1_1_diagonal" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:1_1_diagonal", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_1_diagonal", "y": 0 - }, - "east": { - "model": "furenikusroads:1_1_diagonal", "y": 90 - }, - "south": { - "model": "furenikusroads:1_1_diagonal", "y": 180 - }, - "west": { - "model": "furenikusroads:1_1_diagonal", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_1_mirror.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_1_mirror.json deleted file mode 100644 index f835cc2b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_1_mirror.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:1_1_diagonal" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:1_1_diagonal", "y": 0, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_1_diagonal", "y": 0 - }, - "east": { - "model": "furenikusroads:1_1_diagonal", "y": 90 - }, - "south": { - "model": "furenikusroads:1_1_diagonal", "y": 180 - }, - "west": { - "model": "furenikusroads:1_1_diagonal", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_2.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_2.json deleted file mode 100644 index 456132ae..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_2.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:1_2_diagonal" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:1_2_diagonal", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "normal": { - "model": "furenikusroads:nomodel" - }, - "facing": { - "north": { - "model": "furenikusroads:1_2_diagonal_a", "y": 0 - }, - "east": { - "model": "furenikusroads:1_2_diagonal_a", "y": 90 - }, - "south": { - "model": "furenikusroads:1_2_diagonal_a", "y": 180 - }, - "west": { - "model": "furenikusroads:1_2_diagonal_a", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_2_mirror.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_2_mirror.json deleted file mode 100644 index 894238b0..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_2_mirror.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:1_2_diagonal_mirror" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:1_2_diagonal_mirror", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_2_diagonal_mirror_a", "y": 0 - }, - "east": { - "model": "furenikusroads:1_2_diagonal_mirror_a", "y": 90 - }, - "south": { - "model": "furenikusroads:1_2_diagonal_mirror_a", "y": 180 - }, - "west": { - "model": "furenikusroads:1_2_diagonal_mirror_a", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_4.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_4.json deleted file mode 100644 index cb3e0135..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_4.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:1_4_diagonal" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:1_4_diagonal", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_4_diagonal_a", "y": 0 - }, - "east": { - "model": "furenikusroads:1_4_diagonal_a", "y": 90 - }, - "south": { - "model": "furenikusroads:1_4_diagonal_a", "y": 180 - }, - "west": { - "model": "furenikusroads:1_4_diagonal_a", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_4_mirror.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_4_mirror.json deleted file mode 100644 index a07a6da5..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_4_mirror.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:1_4_diagonal_mirror" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:1_4_diagonal_mirror", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_4_diagonal_mirror_a", "y": 0 - }, - "east": { - "model": "furenikusroads:1_4_diagonal_mirror_a", "y": 90 - }, - "south": { - "model": "furenikusroads:1_4_diagonal_mirror_a", "y": 180 - }, - "west": { - "model": "furenikusroads:1_4_diagonal_mirror_a", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_8.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_8.json deleted file mode 100644 index ebef58c0..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_8.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:1_8_diagonal" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:1_8_diagonal", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_4_diagonal_b", "y": 0 - }, - "east": { - "model": "furenikusroads:1_4_diagonal_b", "y": 90 - }, - "south": { - "model": "furenikusroads:1_4_diagonal_b", "y": 180 - }, - "west": { - "model": "furenikusroads:1_4_diagonal_b", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_8_mirror.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_8_mirror.json deleted file mode 100644 index 26cbabc4..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_1_8_mirror.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:1_8_diagonal_mirror" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:1_8_diagonal_mirror", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_4_diagonal_b", "y": 0 - }, - "east": { - "model": "furenikusroads:1_4_diagonal_b", "y": 90 - }, - "south": { - "model": "furenikusroads:1_4_diagonal_b", "y": 180 - }, - "west": { - "model": "furenikusroads:1_4_diagonal_b", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_4.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_4.json deleted file mode 100644 index 588e0d36..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_4.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:2_4_diagonal" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:2_4_diagonal", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_4_diagonal_b", "y": 0 - }, - "east": { - "model": "furenikusroads:1_4_diagonal_b", "y": 90 - }, - "south": { - "model": "furenikusroads:1_4_diagonal_b", "y": 180 - }, - "west": { - "model": "furenikusroads:1_4_diagonal_b", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_4_mirror.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_4_mirror.json deleted file mode 100644 index a4bb4fcc..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_4_mirror.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:2_4_diagonal_mirror" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:2_4_diagonal_mirror", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_4_diagonal_mirror_b", "y": 0 - }, - "east": { - "model": "furenikusroads:1_4_diagonal_mirror_b", "y": 90 - }, - "south": { - "model": "furenikusroads:1_4_diagonal_mirror_b", "y": 180 - }, - "west": { - "model": "furenikusroads:1_4_diagonal_mirror_b", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_8.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_8.json deleted file mode 100644 index 00b541eb..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_8.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:2_8_diagonal" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:2_8_diagonal", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_4_diagonal_b", "y": 0 - }, - "east": { - "model": "furenikusroads:1_4_diagonal_b", "y": 90 - }, - "south": { - "model": "furenikusroads:1_4_diagonal_b", "y": 180 - }, - "west": { - "model": "furenikusroads:1_4_diagonal_b", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_8_mirror.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_8_mirror.json deleted file mode 100644 index 581a9ea5..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_2_8_mirror.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:2_8_diagonal_mirror" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:2_8_diagonal_mirror", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_4_diagonal_b", "y": 0 - }, - "east": { - "model": "furenikusroads:1_4_diagonal_b", "y": 90 - }, - "south": { - "model": "furenikusroads:1_4_diagonal_b", "y": 180 - }, - "west": { - "model": "furenikusroads:1_4_diagonal_b", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_3_8.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_3_8.json deleted file mode 100644 index e4888d3a..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_3_8.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:3_8_diagonal" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:3_8_diagonal", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_4_diagonal_b", "y": 0 - }, - "east": { - "model": "furenikusroads:1_4_diagonal_b", "y": 90 - }, - "south": { - "model": "furenikusroads:1_4_diagonal_b", "y": 180 - }, - "west": { - "model": "furenikusroads:1_4_diagonal_b", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_3_8_mirror.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_3_8_mirror.json deleted file mode 100644 index 81d16dbe..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_3_8_mirror.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:3_8_diagonal_mirror" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:3_8_diagonal_mirror", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_1_diagonal", "y": 0 - }, - "east": { - "model": "furenikusroads:1_1_diagonal", "y": 90 - }, - "south": { - "model": "furenikusroads:1_1_diagonal", "y": 180 - }, - "west": { - "model": "furenikusroads:1_1_diagonal", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_4_8.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_4_8.json deleted file mode 100644 index d8181b41..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_4_8.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:4_8_diagonal" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:4_8_diagonal", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_4_diagonal_b", "y": 0 - }, - "east": { - "model": "furenikusroads:1_4_diagonal_b", "y": 90 - }, - "south": { - "model": "furenikusroads:1_4_diagonal_b", "y": 180 - }, - "west": { - "model": "furenikusroads:1_4_diagonal_b", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_4_8_mirror.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_4_8_mirror.json deleted file mode 100644 index bce12be4..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_diagonal_4_8_mirror.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:4_8_diagonal_mirror" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:4_8_diagonal_mirror", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { - "model": "furenikusroads:1_1_diagonal", "y": 0 - }, - "east": { - "model": "furenikusroads:1_1_diagonal", "y": 90 - }, - "south": { - "model": "furenikusroads:1_1_diagonal", "y": 180 - }, - "west": { - "model": "furenikusroads:1_1_diagonal", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_dirt.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_dirt.json deleted file mode 100644 index 55212845..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_dirt.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "blocks/dirt", - "particle": "blocks/dirt" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "blocks/dirt" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_fine.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_fine.json deleted file mode 100644 index 9ef0e47a..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_fine.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_fine", - "particle": "furenikusroads:blocks/road_block_fine" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_fine" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_grass.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_grass.json deleted file mode 100644 index 777cbee8..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_grass.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "blocks/grass_top", - "particle": "blocks/grass_top" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "textures": { - "0": "furenikusroads:blocks/grass_inventory" - } - }], - "road_block": { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { "model": "furenikusroads:road_16_16" } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_gravel.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_gravel.json deleted file mode 100644 index 27a152ce..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_gravel.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "blocks/gravel", - "particle": "blocks/gravel" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "blocks/gravel" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_green.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_green.json deleted file mode 100644 index eacebccc..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_green.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_green", - "particle": "furenikusroads:blocks/road_block_green" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_green" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_light.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_light.json deleted file mode 100644 index 2c7fa50a..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_light.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_light", - "particle": "furenikusroads:blocks/road_block_light" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_light" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_muddy.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_muddy.json deleted file mode 100644 index cfa81891..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_muddy.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_muddy", - "particle": "furenikusroads:blocks/road_block_muddy" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_muddy" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_muddy_dried.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_muddy_dried.json deleted file mode 100644 index 1a5a4ec1..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_muddy_dried.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_muddy_dried", - "particle": "furenikusroads:blocks/road_block_muddy_dried" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_muddy_dried" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_pale.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_pale.json deleted file mode 100644 index abdfb892..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_pale.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_pale", - "particle": "furenikusroads:blocks/road_block_pale" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_pale" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_red.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_red.json deleted file mode 100644 index e90995b2..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_red.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_red", - "particle": "furenikusroads:blocks/road_block_red" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_red" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_sand.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_sand.json deleted file mode 100644 index 0f2acc27..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_sand.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "blocks/sand", - "particle": "blocks/sand" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "blocks/sand" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_standard.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_standard.json deleted file mode 100644 index 9f932a32..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_standard.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_standard", - "particle": "furenikusroads:blocks/road_block_standard" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_standard" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_stone.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_stone.json deleted file mode 100644 index 2a123a34..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_stone.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "blocks/stone", - "particle": "blocks/stone" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "blocks/stone" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_white.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_white.json deleted file mode 100644 index df0360dd..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_white.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_white", - "particle": "furenikusroads:blocks/road_block_white" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_white" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_block_yellow.json b/src/main/resources/assets/furenikusroads/blockstates/road_block_yellow.json deleted file mode 100644 index 84c41378..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_block_yellow.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/road_block_yellow", - "particle": "furenikusroads:blocks/road_block_yellow" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/road_block_yellow" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_factory.json b/src/main/resources/assets/furenikusroads/blockstates/road_factory.json deleted file mode 100644 index 21383f81..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_factory.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "1": "furenikusroads:blocks/machine_piping", - "2": "furenikusroads:blocks/machine_glass", - "4": "furenikusroads:blocks/road_factory_machine_b", - "5": "furenikusroads:blocks/machine_part_plain", - "6": "furenikusroads:blocks/road_factory_machine_a", - "7": "furenikusroads:blocks/machine_part_dark", - "8": "furenikusroads:blocks/machine_vent_back_off", - "9": "furenikusroads:blocks/machine_metal_dark", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:road_factory" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:road_factory", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "fluid_left": { - "true": { - "submodel": "furenikusroads:road_factory_fluid_left" - }, - "false": { - } - }, - "fluid_up": { - "true": { - "submodel": "furenikusroads:road_factory_fluid_up" - }, - "false": { - } - }, - "base_plate": { - "true": { - "submodel": "furenikusroads:base_plate" - }, - "false": { - "submodel": "furenikusroads:base_plate_road_factory" - } - }, - "furnace_active": { - "true": { - "textures": { - "8": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "rotation": { - "north": { - "model": "furenikusroads:road_factory", "y": 0 - }, - "east": { - "model": "furenikusroads:road_factory", "y": 90 - }, - "south": { - "model": "furenikusroads:road_factory", "y": 180 - }, - "west": { - "model": "furenikusroads:road_factory", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_factory_electric.json b/src/main/resources/assets/furenikusroads/blockstates/road_factory_electric.json deleted file mode 100644 index 08ea6e2e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_factory_electric.json +++ /dev/null @@ -1,87 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal_electric", - "1": "furenikusroads:blocks/machine_piping", - "2": "furenikusroads:blocks/machine_glass", - "4": "furenikusroads:blocks/road_factory_machine_b_electric", - "5": "furenikusroads:blocks/machine_part_plain_electric", - "6": "furenikusroads:blocks/road_factory_machine_a_electric", - "7": "furenikusroads:blocks/machine_part_plain", - "8": "furenikusroads:blocks/machine_vent_back_off", - "9": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:road_factory" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:road_factory", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "fluid_left": { - "true": { - "submodel": "furenikusroads:road_factory_fluid_left" - }, - "false": { - } - }, - "fluid_up": { - "true": { - "submodel": "furenikusroads:road_factory_fluid_up" - }, - "false": { - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_road_factory" } - } - } - }, - "furnace_active": { - "true": { - "textures": { - "8": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "rotation": { - "north": { - "model": "furenikusroads:road_factory", "y": 0 - }, - "east": { - "model": "furenikusroads:road_factory", "y": 90 - }, - "south": { - "model": "furenikusroads:road_factory", "y": 180 - }, - "west": { - "model": "furenikusroads:road_factory", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/road_snow.json b/src/main/resources/assets/furenikusroads/blockstates/road_snow.json deleted file mode 100644 index 95cd5b17..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/road_snow.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "variants": { - "layers=1": { "model": "snow_height2" }, - "layers=2": { "model": "snow_height4" }, - "layers=3": { "model": "snow_height6" }, - "layers=4": { "model": "snow_height8" }, - "layers=5": { "model": "snow_height10" }, - "layers=6": { "model": "snow_height12" }, - "layers=7": { "model": "snow_height14" }, - "layers=8": { "model": "snow" } - } -} diff --git a/src/main/resources/assets/furenikusroads/blockstates/sidewalk.json b/src/main/resources/assets/furenikusroads/blockstates/sidewalk.json deleted file mode 100644 index 8dd5879c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/sidewalk.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/sidewalk", - "particle": "furenikusroads:blocks/sidewalk" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/sidewalk" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/sidewalk_clean.json b/src/main/resources/assets/furenikusroads/blockstates/sidewalk_clean.json deleted file mode 100644 index 9d37cbd6..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/sidewalk_clean.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/sidewalk_clean", - "particle": "furenikusroads:blocks/sidewalk_clean" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/sidewalk_clean" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/sidewalk_dark.json b/src/main/resources/assets/furenikusroads/blockstates/sidewalk_dark.json deleted file mode 100644 index f895ff7c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/sidewalk_dark.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/sidewalk_dark", - "particle": "furenikusroads:blocks/sidewalk_dark" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/sidewalk_dark" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/sidewalk_tan.json b/src/main/resources/assets/furenikusroads/blockstates/sidewalk_tan.json deleted file mode 100644 index e9d076e2..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/sidewalk_tan.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/sidewalk_tan", - "particle": "furenikusroads:blocks/sidewalk_tan" - }, - "model": "furenikusroads:road_12_16" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "road_block": - { - "0": { "model": "furenikusroads:road_1_16" }, - "1": { "model": "furenikusroads:road_2_16" }, - "2": { "model": "furenikusroads:road_3_16" }, - "3": { "model": "furenikusroads:road_4_16" }, - "4": { "model": "furenikusroads:road_5_16" }, - "5": { "model": "furenikusroads:road_6_16" }, - "6": { "model": "furenikusroads:road_7_16" }, - "7": { "model": "furenikusroads:road_8_16" }, - "8": { "model": "furenikusroads:road_9_16" }, - "9": { "model": "furenikusroads:road_10_16" }, - "10": { "model": "furenikusroads:road_11_16" }, - "11": { "model": "furenikusroads:road_12_16" }, - "12": { "model": "furenikusroads:road_13_16" }, - "13": { "model": "furenikusroads:road_14_16" }, - "14": { "model": "furenikusroads:road_15_16" }, - "15": { - "model": "cube_all", - "textures": { - "all": "furenikusroads:blocks/sidewalk_tan" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/speed_bump.json b/src/main/resources/assets/furenikusroads/blockstates/speed_bump.json deleted file mode 100644 index 013a61bf..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/speed_bump.json +++ /dev/null @@ -1,139 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:speed_bump_inventory" - }, - "variants": { - "meta": { - "0": { - "model": "furenikusroads:nomodel", - "textures": { - "0": "furenikusroads:blocks/bollard_black" - } - }, - "1": { - "model": "furenikusroads:nomodel", "y": 90, - "textures": { - "0": "furenikusroads:blocks/bollard_black" - } - }, - "2": { - "model": "furenikusroads:nomodel", - "textures": { - "0": "furenikusroads:blocks/bollard_yellow" - } - }, - "3": { - "model": "furenikusroads:nomodel", "y": 90, - "textures": { - "0": "furenikusroads:blocks/bollard_yellow" - } - }, - "4": { - "model": "furenikusroads:nomodel", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "5": { - "model": "furenikusroads:nomodel", "y": 90, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "6": { - "model": "furenikusroads:nomodel", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "7": { - "model": "furenikusroads:nomodel", "y": 90, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "8": { - "model": "furenikusroads:nomodel", - "textures": { - "0": "furenikusroads:blocks/road_block_standard" - } - }, - "9": { - "model": "furenikusroads:nomodel", "y": 90, - "textures": { - "0": "furenikusroads:blocks/road_block_standard" - } - }, - "10": { - "model": "furenikusroads:nomodel", - "textures": { - "0": "furenikusroads:blocks/road_block_white" - } - }, - "11": { - "model": "furenikusroads:nomodel", "y": 90, - "textures": { - "0": "furenikusroads:blocks/road_block_white" - } - }, - "12": { - "model": "furenikusroads:nomodel", - "textures": { - "0": "furenikusroads:blocks/road_block_yellow" - } - }, - "13": { - "model": "furenikusroads:nomodel", "y": 90, - "textures": { - "0": "furenikusroads:blocks/road_block_yellow" - } - }, - "14": { - "model": "furenikusroads:nomodel", - "textures": { - "0": "furenikusroads:blocks/road_block_red" - } - }, - "15": { - "model": "furenikusroads:nomodel", "y": 90, - "textures": { - "0": "furenikusroads:blocks/road_block_red" - } - } - }, - "left": { - "true": { - "submodel": { - "left": { - "model": "furenikusroads:speed_bump_full_l" - } - } - }, - "false": { - "submodel": { - "left": { - "model": "furenikusroads:speed_bump_end_l" - } - } - } - }, - "right": { - "true": { - "submodel": { - "right": { - "model": "furenikusroads:speed_bump_full_r" - } - } - }, - "false": { - "submodel": { - "right": { - "model": "furenikusroads:speed_bump_end_r" - } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/street_block_a.json b/src/main/resources/assets/furenikusroads/blockstates/street_block_a.json deleted file mode 100644 index 545b2a53..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/street_block_a.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { "all": "furenikusroads:blocks/street_block_a_0" }, - "model": "cube_all" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "street_block": { - "0": { "textures": { "all": "furenikusroads:blocks/street_block_a_0" }}, - "1": { "textures": { "all": "furenikusroads:blocks/street_block_a_1" }}, - "2": { "textures": { "all": "furenikusroads:blocks/street_block_a_2" }}, - "3": { "textures": { "all": "furenikusroads:blocks/street_block_a_3" }}, - "4": { "textures": { "all": "furenikusroads:blocks/street_block_a_4" }}, - "5": { "textures": { "all": "furenikusroads:blocks/street_block_a_5" }}, - "6": { "textures": { "all": "furenikusroads:blocks/street_block_a_6" }}, - "7": { "textures": { "all": "furenikusroads:blocks/street_block_a_7" }}, - "8": { "textures": { "all": "furenikusroads:blocks/street_block_a_8" }}, - "9": { "textures": { "all": "furenikusroads:blocks/street_block_a_9" }}, - "10": { "textures": { "all": "furenikusroads:blocks/street_block_a_10" }}, - "11": { "textures": { "all": "furenikusroads:blocks/street_block_a_11" }}, - "12": { "textures": { "all": "furenikusroads:blocks/street_block_a_12" }}, - "13": { "textures": { "all": "furenikusroads:blocks/street_block_a_13" }}, - "14": { "textures": { "all": "furenikusroads:blocks/street_block_a_14" }}, - "15": { "textures": { "all": "furenikusroads:blocks/street_block_a_15" }} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/street_block_b.json b/src/main/resources/assets/furenikusroads/blockstates/street_block_b.json deleted file mode 100644 index c38e686b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/street_block_b.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { "all": "furenikusroads:blocks/street_block_b_0" }, - "model": "cube_all" - }, - "variants": { - "inventory": [{ - "transform": "forge:default-block" - }], - "street_block": { - "0": { "textures": { "all": "furenikusroads:blocks/street_block_b_0" }}, - "1": { "textures": { "all": "furenikusroads:blocks/street_block_b_1" }}, - "2": { "textures": { "all": "furenikusroads:blocks/street_block_b_2" }}, - "3": { "textures": { "all": "furenikusroads:blocks/street_block_b_3" }}, - "4": { "textures": { "all": "furenikusroads:blocks/street_block_b_4" }}, - "5": { "textures": { "all": "furenikusroads:blocks/street_block_b_5" }}, - "6": { "textures": { "all": "furenikusroads:blocks/street_block_b_6" }}, - "7": { "textures": { "all": "furenikusroads:blocks/street_block_b_7" }}, - "8": { "textures": { "all": "furenikusroads:blocks/street_block_b_8" }}, - "9": { "textures": { "all": "furenikusroads:blocks/street_block_b_9" }}, - "10": { "textures": { "all": "furenikusroads:blocks/street_block_b_10" }}, - "11": { "textures": { "all": "furenikusroads:blocks/street_block_b_11" }}, - "12": { "textures": { "all": "furenikusroads:blocks/street_block_b_12" }}, - "13": { "textures": { "all": "furenikusroads:blocks/street_block_b_13" }}, - "14": { "textures": { "all": "furenikusroads:blocks/street_block_b_14" }}, - "15": { "textures": { "all": "furenikusroads:blocks/street_block_b_15" }} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/street_light_1.json b/src/main/resources/assets/furenikusroads/blockstates/street_light_1.json deleted file mode 100644 index 825594e6..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/street_light_1.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "1": "furenikusroads:blocks/street_light_bulb", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:street_light_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:street_light_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:street_light_1" }, - "east": { "model": "furenikusroads:street_light_1", "y": 90 }, - "south": { "model": "furenikusroads:street_light_1", "y": 180 }, - "west": { "model": "furenikusroads:street_light_1", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/street_light_2.json b/src/main/resources/assets/furenikusroads/blockstates/street_light_2.json deleted file mode 100644 index 32039ca5..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/street_light_2.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:street_light_2" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:street_light_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:street_light_2" }, - "east": { "model": "furenikusroads:street_light_2", "y": 90 }, - "south": { "model": "furenikusroads:street_light_2", "y": 180 }, - "west": { "model": "furenikusroads:street_light_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/street_light_3.json b/src/main/resources/assets/furenikusroads/blockstates/street_light_3.json deleted file mode 100644 index 935e560d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/street_light_3.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:street_light_3" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:street_light_3", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:street_light_3" }, - "east": { "model": "furenikusroads:street_light_3", "y": 90 }, - "south": { "model": "furenikusroads:street_light_3", "y": 180 }, - "west": { "model": "furenikusroads:street_light_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/street_light_4.json b/src/main/resources/assets/furenikusroads/blockstates/street_light_4.json deleted file mode 100644 index c37c500d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/street_light_4.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:street_light_4" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:street_light_4", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:street_light_4" }, - "east": { "model": "furenikusroads:street_light_4", "y": 90 }, - "south": { "model": "furenikusroads:street_light_4", "y": 180 }, - "west": { "model": "furenikusroads:street_light_4", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/street_light_5.json b/src/main/resources/assets/furenikusroads/blockstates/street_light_5.json deleted file mode 100644 index ed33586e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/street_light_5.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:street_light_5" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:street_light_5", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:street_light_5" }, - "east": { "model": "furenikusroads:street_light_5", "y": 90 }, - "south": { "model": "furenikusroads:street_light_5", "y": 180 }, - "west": { "model": "furenikusroads:street_light_5", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/street_light_6.json b/src/main/resources/assets/furenikusroads/blockstates/street_light_6.json deleted file mode 100644 index a142e3c3..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/street_light_6.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:street_light_6" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:street_light_6", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:street_light_6" }, - "east": { "model": "furenikusroads:street_light_6", "y": 90 }, - "south": { "model": "furenikusroads:street_light_6", "y": 180 }, - "west": { "model": "furenikusroads:street_light_6", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/tactile_crossing_bumps.json b/src/main/resources/assets/furenikusroads/blockstates/tactile_crossing_bumps.json deleted file mode 100644 index bf24c729..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/tactile_crossing_bumps.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/tactile_paving", - "particle": "furenikusroads:blocks/tactile_paving" - }, - "model": "furenikusroads:tactile_marker" - }, - "variants": { - "normal": [{}] - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/tar_distiller.json b/src/main/resources/assets/furenikusroads/blockstates/tar_distiller.json deleted file mode 100644 index 06cabb7d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/tar_distiller.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal", - "1": "furenikusroads:blocks/machine_piping", - "2": "furenikusroads:blocks/machine_glass", - "3": "furenikusroads:blocks/tar_distiller_machine_a", - "4": "furenikusroads:blocks/tar_distiller_machine_b", - "5": "furenikusroads:blocks/machine_vent_back_off", - "6": "furenikusroads:blocks/machine_metal_dark", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:tar_distiller" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tar_distiller", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "fluid_left": { - "true": { - "submodel": "furenikusroads:tar_distiller_fluid_out_left" - }, - "false": { - } - }, - "fluid_right": { - "true": { - "submodel": "furenikusroads:tar_distiller_fluid_out_right" - }, - "false": { - } - }, - "fluid_top": { - "true": { - "submodel": "furenikusroads:tar_distiller_fluid_out_top" - }, - "false": { - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_tar_distiller" } - } - } - }, - "furnace_active": { - "true": { - "textures": { - "5": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "rotation": { - "north": { - "model": "furenikusroads:tar_distiller", "y": 0 - }, - "east": { - "model": "furenikusroads:tar_distiller", "y": 90 - }, - "south": { - "model": "furenikusroads:tar_distiller", "y": 180 - }, - "west": { - "model": "furenikusroads:tar_distiller", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/tar_distiller_electric.json b/src/main/resources/assets/furenikusroads/blockstates/tar_distiller_electric.json deleted file mode 100644 index 9b62b019..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/tar_distiller_electric.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/machine_metal_electric", - "1": "furenikusroads:blocks/machine_piping", - "2": "furenikusroads:blocks/machine_glass", - "3": "furenikusroads:blocks/tar_distiller_machine_a_electric", - "4": "furenikusroads:blocks/tar_distiller_machine_b_electric", - "5": "furenikusroads:blocks/machine_vent_back_off", - "6": "furenikusroads:blocks/machine_metal", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:tar_distiller" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tar_distiller", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5] - }, - "fixed": { - "rotation": [0, -90, 0], - "translation": [0, 0, -2.5], - "scale": [0.5, 0.5, 0.5] - }, - "gui": { - "rotation": [15, 45, 0], - "scale": [0.5, 0.5, 0.5] - } - } - }], - "fluid_left": { - "true": { - "submodel": "furenikusroads:tar_distiller_fluid_out_left" - }, - "false": { - } - }, - "fluid_right": { - "true": { - "submodel": "furenikusroads:tar_distiller_fluid_out_right" - }, - "false": { - } - }, - "fluid_top": { - "true": { - "submodel": "furenikusroads:tar_distiller_fluid_out_top" - }, - "false": { - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_tar_distiller" } - } - } - }, - "furnace_active": { - "true": { - "textures": { - "5": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "rotation": { - "north": { - "model": "furenikusroads:tar_distiller", "y": 0 - }, - "east": { - "model": "furenikusroads:tar_distiller", "y": 90 - }, - "south": { - "model": "furenikusroads:tar_distiller", "y": 180 - }, - "west": { - "model": "furenikusroads:tar_distiller", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/tar_fluid.json b/src/main/resources/assets/furenikusroads/blockstates/tar_fluid.json deleted file mode 100644 index 916e65f5..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/tar_fluid.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "textures": { - "particle": "blocks/tar", - "all": "furenikusroads:fluids/tar_flowing" - }, - "model": "forge:fluid", - "custom": { "fluid": "tar" }, - "uvlock": false - }, - "variants": { - "normal": [{ - - }], - "inventory": [{ - - }], - "level": { - "0": { }, - "1": { }, - "2": { }, - "3": { }, - "4": { }, - "5": { }, - "6": { }, - "7": { }, - "8": { }, - "9": { }, - "10": { }, - "11": { }, - "12": { }, - "13": { }, - "14": { }, - "15": { } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/tarmac_cutter.json b/src/main/resources/assets/furenikusroads/blockstates/tarmac_cutter.json deleted file mode 100644 index 31f4dee3..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/tarmac_cutter.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "1": "furenikusroads:blocks/machine_metal", - "2": "furenikusroads:items/tarmac_cutter_blade", - "3": "furenikusroads:blocks/machine_piping", - "4": "furenikusroads:blocks/machine_hazard", - "5": "furenikusroads:blocks/machine_metal_dark", - "6": "furenikusroads:blocks/machine_vent_back_off", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:tarmac_cutter_block" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tarmac_cutter_block", - "transform": { - "thirdperson_righthand": { - "rotation": [68, 0, 0], - "translation": [-6, 3.25, -6], - "scale": [0.75, 0.75, 0.75] - }, - "thirdperson_lefthand": { - "rotation": [68, 0, 0], - "translation": [-6, 3.25, -6], - "scale": [0.75, 0.75, 0.75] - }, - "firstperson_righthand": { - "translation": [-8.75, 0, 0] - }, - "firstperson_lefthand": { - "translation": [-8.75, 0, 0] - }, - "head": { - "translation": [0, 14, 0] - }, - "ground": { - "translation": [0, 4, 0] - }, - "fixed": { - "rotation": [0, 90, 0], - "translation": [0, 1.25, -1.5] - }, - "gui": { - "rotation": [14, 60, 0], - "translation": [0, 2, 0] - } - } - }], - "furnace_active": { - "true": { - "textures": { - "6": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "blade": { - "none": { - "submodel": { - "blade": { - "model": "furenikusroads:tarmac_cutter_blade", - "textures": { - "blade": "furenikusroads:blocks/blank" - } - } - } - }, - "iron": { - "submodel": { - "blade": { - "model": "furenikusroads:tarmac_cutter_blade", - "textures": { - "blade": "furenikusroads:blocks/tarmac_cutter_blade_iron" - } - } - } - }, - "gold": { - "submodel": { - "blade": { - "model": "furenikusroads:tarmac_cutter_blade", - "textures": { - "blade": "furenikusroads:blocks/tarmac_cutter_blade_gold" - } - } - } - }, - "diamond": { - "submodel": { - "blade": { - "model": "furenikusroads:tarmac_cutter_blade", - "textures": { - "blade": "furenikusroads:blocks/tarmac_cutter_blade_diamond" - } - } - } - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_tarmac_cutter" } - } - } - }, - "rotation": { - "north": { - "model": "furenikusroads:tarmac_cutter_block", "y": 0 - }, - "east": { - "model": "furenikusroads:tarmac_cutter_block", "y": 90 - }, - "south": { - "model": "furenikusroads:tarmac_cutter_block", "y": 180 - }, - "west": { - "model": "furenikusroads:tarmac_cutter_block", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/tarmac_cutter_electric.json b/src/main/resources/assets/furenikusroads/blockstates/tarmac_cutter_electric.json deleted file mode 100644 index f988e2f6..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/tarmac_cutter_electric.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "1": "furenikusroads:blocks/machine_metal_electric", - "2": "furenikusroads:items/tarmac_cutter_blade", - "3": "furenikusroads:blocks/machine_piping", - "4": "furenikusroads:blocks/machine_hazard", - "5": "furenikusroads:blocks/machine_metal", - "6": "furenikusroads:blocks/machine_vent_back_off", - "particle": "furenikusroads:blocks/machine_metal" - }, - "model": "furenikusroads:tarmac_cutter_block" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tarmac_cutter_block", - "transform": { - "thirdperson_righthand": { - "rotation": [68, 0, 0], - "translation": [-6, 3.25, -6], - "scale": [1.25, 1.25, 1.25] - }, - "thirdperson_lefthand": { - "rotation": [68, 0, 0], - "translation": [-6, 3.25, -6], - "scale": [1.25, 1.25, 1.25] - }, - "firstperson_righthand": { - "translation": [-8.75, 0, 0] - }, - "firstperson_lefthand": { - "translation": [-8.75, 0, 0] - }, - "head": { - "translation": [0, 14, 0] - }, - "ground": { - "translation": [0, 4, 0] - }, - "fixed": { - "rotation": [0, 90, 0], - "translation": [0, 1.25, -1.5] - }, - "gui": { - "rotation": [14, 60, 0], - "translation": [0, 2, 0] - } - } - }], - "furnace_active": { - "true": { - "textures": { - "6": "furenikusroads:blocks/machine_vent_back_on" - } - }, - "false": { - } - }, - "blade": { - "none": { - "submodel": { - "blade": { - "model": "furenikusroads:tarmac_cutter_blade", - "textures": { - "blade": "furenikusroads:blocks/blank" - } - } - } - }, - "iron": { - "submodel": { - "blade": { - "model": "furenikusroads:tarmac_cutter_blade", - "textures": { - "blade": "furenikusroads:blocks/tarmac_cutter_blade_iron" - } - } - } - }, - "gold": { - "submodel": { - "blade": { - "model": "furenikusroads:tarmac_cutter_blade", - "textures": { - "blade": "furenikusroads:blocks/tarmac_cutter_blade_gold" - } - } - } - }, - "diamond": { - "submodel": { - "blade": { - "model": "furenikusroads:tarmac_cutter_blade", - "textures": { - "blade": "furenikusroads:blocks/tarmac_cutter_blade_diamond" - } - } - } - } - }, - "base_plate": { - "true": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate" } - } - }, - "false": { - "submodel": { - "baseplate": { "model": "furenikusroads:base_plate_tarmac_cutter" } - } - } - }, - "rotation": { - "north": { - "model": "furenikusroads:tarmac_cutter_block", "y": 0 - }, - "east": { - "model": "furenikusroads:tarmac_cutter_block", "y": 90 - }, - "south": { - "model": "furenikusroads:tarmac_cutter_block", "y": 180 - }, - "west": { - "model": "furenikusroads:tarmac_cutter_block", "y": 270 - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/wheel_stop.json b/src/main/resources/assets/furenikusroads/blockstates/wheel_stop.json deleted file mode 100644 index 57b95b01..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/wheel_stop.json +++ /dev/null @@ -1,107 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "model": "furenikusroads:wheel_stop" - }, - "variants": { - "meta": { - "0": { - "model": "furenikusroads:wheel_stop", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "1": { - "model": "furenikusroads:wheel_stop", "y": 90, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "2": { - "model": "furenikusroads:wheel_stop", "y": 180, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "3": { - "model": "furenikusroads:wheel_stop", "y": 270, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_1" - } - }, - "4": { - "model": "furenikusroads:wheel_stop", - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "5": { - "model": "furenikusroads:wheel_stop", "y": 90, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "6": { - "model": "furenikusroads:wheel_stop", "y": 180, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "7": { - "model": "furenikusroads:wheel_stop", "y": 270, - "textures": { - "0": "furenikusroads:blocks/road_block_concrete_2" - } - }, - "8": { - "model": "furenikusroads:wheel_stop", - "textures": { - "0": "furenikusroads:blocks/bollard_yellow" - } - }, - "9": { - "model": "furenikusroads:wheel_stop", "y": 90, - "textures": { - "0": "furenikusroads:blocks/bollard_yellow" - } - }, - "10": { - "model": "furenikusroads:wheel_stop", "y": 180, - "textures": { - "0": "furenikusroads:blocks/bollard_yellow" - } - }, - "11": { - "model": "furenikusroads:wheel_stop", "y": 270, - "textures": { - "0": "furenikusroads:blocks/bollard_yellow" - } - }, - "12": { - "model": "furenikusroads:wheel_stop", - "textures": { - "0": "furenikusroads:blocks/bollard_black" - } - }, - "13": { - "model": "furenikusroads:wheel_stop", "y": 90, - "textures": { - "0": "furenikusroads:blocks/bollard_black" - } - }, - "14": { - "model": "furenikusroads:wheel_stop", "y": 180, - "textures": { - "0": "furenikusroads:blocks/bollard_black" - } - }, - "15": { - "model": "furenikusroads:wheel_stop", "y": 270, - "textures": { - "0": "furenikusroads:blocks/bollard_black" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_arrow.json b/src/main/resources/assets/furenikusroads/blockstates/white_arrow.json deleted file mode 100644 index f584bd9d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_arrow.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_arrow" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_arrow", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/white_arrow_4" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:tile_arrow" }, - "1": { "model": "furenikusroads:tile_arrow", "y": 90 }, - "2": { "model": "furenikusroads:tile_arrow", "y": 180 }, - "3": { "model": "furenikusroads:tile_arrow", "y": 270 }, - "4": { "model": "furenikusroads:tile_arrow_side" }, - "5": { "model": "furenikusroads:tile_arrow_side", "y": 90 }, - "6": { "model": "furenikusroads:tile_arrow_side", "y": 180 }, - "7": { "model": "furenikusroads:tile_arrow_side", "y": 270 }, - "8": { "model": "furenikusroads:tile_arrow_side", "x": 270 }, - "9": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 90 }, - "10": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 180 }, - "11": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 270 }, - "12": { "model": "furenikusroads:tile_arrow_side", "x": 270 }, - "13": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 90 }, - "14": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 180 }, - "15": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_arrow_diagonal.json b/src/main/resources/assets/furenikusroads/blockstates/white_arrow_diagonal.json deleted file mode 100644 index ab4e4a9a..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_arrow_diagonal.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_arrow_diagonal" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/white_arrow_diagonal" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/white_arrow_diagonal_4" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:tile_arrow_diagonal" }, - "1": { "model": "furenikusroads:tile_arrow_diagonal", "y": 90 }, - "2": { "model": "furenikusroads:tile_arrow_diagonal", "y": 180 }, - "3": { "model": "furenikusroads:tile_arrow_diagonal", "y": 270 }, - "4": { "model": "furenikusroads:tile_arrow_diagonal_line_full" }, - "5": { "model": "furenikusroads:tile_arrow_diagonal_line_full", "y": 90 }, - "6": { "model": "furenikusroads:tile_arrow_diagonal_line_full", "y": 180 }, - "7": { "model": "furenikusroads:tile_arrow_diagonal_line_full", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_arrow_line.json b/src/main/resources/assets/furenikusroads/blockstates/white_arrow_line.json deleted file mode 100644 index 3d542049..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_arrow_line.json +++ /dev/null @@ -1,82 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_arrow_line" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_arrow_line_inv", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { "model": "furenikusroads:tile_arrow_line" }, - "east": { "model": "furenikusroads:tile_arrow_line", "y": 90 }, - "south": { "model": "furenikusroads:tile_arrow_line", "y": 180 }, - "west": { "model": "furenikusroads:tile_arrow_line", "y": 270 } - }, - "connect": { - "none": {}, - "connect_left": { - "model": "furenikusroads:tile_arrow_line_connect_left_full" - }, - "connect_right": { - "model": "furenikusroads:tile_arrow_line_connect_right_full" - }, - "connect_up": { - "submodel": { - "up": { "model": "furenikusroads:tile_arrow_line_connect_up" } - } - }, - "connect_left_right": { - "submodel": { - "left": { "model": "furenikusroads:tile_arrow_line_connect_left" }, - "right": { "model": "furenikusroads:tile_arrow_line_connect_right" } - } - }, - "connect_left_up": { - "submodel": { - "left": { "model": "furenikusroads:tile_arrow_line_connect_left" }, - "up": { "model": "furenikusroads:tile_arrow_line_connect_up" } - } - }, - "connect_right_up": { - "submodel": { - "right": { "model": "furenikusroads:tile_arrow_line_connect_right" }, - "up": { "model": "furenikusroads:tile_arrow_line_connect_up" } - } - }, - "connect_left_right_up": { - "submodel": { - "left": { "model": "furenikusroads:tile_arrow_line_connect_left" }, - "right": { "model": "furenikusroads:tile_arrow_line_connect_right" }, - "up": { "model": "furenikusroads:tile_arrow_line_connect_up" } - } - }, - "connect_left_diagonal": { - "model": "furenikusroads:tile_arrow_line_connect_diagonal_left" - }, - "connect_right_diagonal": { - "model": "furenikusroads:tile_arrow_line_connect_diagonal_right" - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_bike.json b/src/main/resources/assets/furenikusroads/blockstates/white_bike.json deleted file mode 100644 index b40a6914..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_bike.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_bike" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_bike" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_bike" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_bike" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_bike" } - }, - "4": { "model": "furenikusroads:text_bike_1" }, - "5": { "model": "furenikusroads:text_bike_1", "y": 90 }, - "6": { "model": "furenikusroads:text_bike_1", "y": 180 }, - "7": { "model": "furenikusroads:text_bike_1", "y": 270 }, - "8": { "model": "furenikusroads:text_bike_2" }, - "9": { "model": "furenikusroads:text_bike_2", "y": 90 }, - "10": { "model": "furenikusroads:text_bike_2", "y": 180 }, - "11": { "model": "furenikusroads:text_bike_2", "y": 270 }, - "12": { "model": "furenikusroads:text_bike_3" }, - "13": { "model": "furenikusroads:text_bike_3", "y": 90 }, - "14": { "model": "furenikusroads:text_bike_3", "y": 180 }, - "15": { "model": "furenikusroads:text_bike_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_bike_icon.json b/src/main/resources/assets/furenikusroads/blockstates/white_bike_icon.json deleted file mode 100644 index 46fe4c38..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_bike_icon.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_bike_icon" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_bike_icon" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_bike_icon" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_bike_icon" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_bike_icon" } - }, - "4": { "model": "furenikusroads:text_bike_icon_1" }, - "5": { "model": "furenikusroads:text_bike_icon_1", "y": 90 }, - "6": { "model": "furenikusroads:text_bike_icon_1", "y": 180 }, - "7": { "model": "furenikusroads:text_bike_icon_1", "y": 270 }, - "8": { "model": "furenikusroads:text_bike_icon_2" }, - "9": { "model": "furenikusroads:text_bike_icon_2", "y": 90 }, - "10": { "model": "furenikusroads:text_bike_icon_2", "y": 180 }, - "11": { "model": "furenikusroads:text_bike_icon_2", "y": 270 }, - "12": { "model": "furenikusroads:text_bike_icon_3" }, - "13": { "model": "furenikusroads:text_bike_icon_3", "y": 90 }, - "14": { "model": "furenikusroads:text_bike_icon_3", "y": 180 }, - "15": { "model": "furenikusroads:text_bike_icon_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_bus.json b/src/main/resources/assets/furenikusroads/blockstates/white_bus.json deleted file mode 100644 index 99b45a70..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_bus.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_bus" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_bus" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_bus" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_bus" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_bus" } - }, - "4": { "model": "furenikusroads:text_bus_1" }, - "5": { "model": "furenikusroads:text_bus_1", "y": 90 }, - "6": { "model": "furenikusroads:text_bus_1", "y": 180 }, - "7": { "model": "furenikusroads:text_bus_1", "y": 270 }, - "8": { "model": "furenikusroads:text_bus_2" }, - "9": { "model": "furenikusroads:text_bus_2", "y": 90 }, - "10": { "model": "furenikusroads:text_bus_2", "y": 180 }, - "11": { "model": "furenikusroads:text_bus_2", "y": 270 }, - "12": { "model": "furenikusroads:text_bus_3" }, - "13": { "model": "furenikusroads:text_bus_3", "y": 90 }, - "14": { "model": "furenikusroads:text_bus_3", "y": 180 }, - "15": { "model": "furenikusroads:text_bus_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_a.json b/src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_a.json deleted file mode 100644 index 3ec53afe..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_a.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_chevron_left_a" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_left_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_a_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_a" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_a_thin.json b/src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_a_thin.json deleted file mode 100644 index 31645a84..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_a_thin.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_chevron_left_a_thin" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_left_a_thin", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_a_thin_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_a_thin" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_b.json b/src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_b.json deleted file mode 100644 index 62bd65f4..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_b.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_chevron_left_b" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_left_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_b_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_b" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_b_thin.json b/src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_b_thin.json deleted file mode 100644 index 827e43cd..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_left_b_thin.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_chevron_left_b_thin" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_left_b_thin", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_b_thin_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_b_thin" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_mid.json b/src/main/resources/assets/furenikusroads/blockstates/white_chevron_mid.json deleted file mode 100644 index 12d73c2f..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_mid.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_chevron_mid_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_mid_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_chevron_mid_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_chevron_mid_thin_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_4": [{ - "model": "furenikusroads:junction_chevron_mid_thin_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_chevron_mid_1" }, - "1": { "model": "furenikusroads:junction_chevron_mid_1", "y": 90 }, - "2": { "model": "furenikusroads:junction_chevron_mid_1", "y": 180 }, - "3": { "model": "furenikusroads:junction_chevron_mid_1", "y": 270 }, - "4": { "model": "furenikusroads:junction_chevron_mid_2" }, - "5": { "model": "furenikusroads:junction_chevron_mid_2", "y": 90 }, - "6": { "model": "furenikusroads:junction_chevron_mid_2", "y": 180 }, - "7": { "model": "furenikusroads:junction_chevron_mid_2", "y": 270 }, - "8": { "model": "furenikusroads:junction_chevron_mid_thin_1" }, - "9": { "model": "furenikusroads:junction_chevron_mid_thin_1", "y": 90 }, - "10": { "model": "furenikusroads:junction_chevron_mid_thin_1", "y": 180 }, - "11": { "model": "furenikusroads:junction_chevron_mid_thin_1", "y": 270 }, - "12": { "model": "furenikusroads:junction_chevron_mid_thin_2" }, - "13": { "model": "furenikusroads:junction_chevron_mid_thin_2", "y": 90 }, - "14": { "model": "furenikusroads:junction_chevron_mid_thin_2", "y": 180 }, - "15": { "model": "furenikusroads:junction_chevron_mid_thin_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_mid_left.json b/src/main/resources/assets/furenikusroads/blockstates/white_chevron_mid_left.json deleted file mode 100644 index 5ec02bda..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_mid_left.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_chevron_mid_left_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_mid_left_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_chevron_mid_left_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_chevron_mid_left_thin_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_4": [{ - "model": "furenikusroads:junction_chevron_mid_left_thin_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_chevron_mid_left_1" }, - "1": { "model": "furenikusroads:junction_chevron_mid_left_1", "y": 90 }, - "2": { "model": "furenikusroads:junction_chevron_mid_left_1", "y": 180 }, - "3": { "model": "furenikusroads:junction_chevron_mid_left_1", "y": 270 }, - "4": { "model": "furenikusroads:junction_chevron_mid_left_2" }, - "5": { "model": "furenikusroads:junction_chevron_mid_left_2", "y": 90 }, - "6": { "model": "furenikusroads:junction_chevron_mid_left_2", "y": 180 }, - "7": { "model": "furenikusroads:junction_chevron_mid_left_2", "y": 270 }, - "8": { "model": "furenikusroads:junction_chevron_mid_left_thin_1" }, - "9": { "model": "furenikusroads:junction_chevron_mid_left_thin_1", "y": 90 }, - "10": { "model": "furenikusroads:junction_chevron_mid_left_thin_1", "y": 180 }, - "11": { "model": "furenikusroads:junction_chevron_mid_left_thin_1", "y": 270 }, - "12": { "model": "furenikusroads:junction_chevron_mid_left_thin_2" }, - "13": { "model": "furenikusroads:junction_chevron_mid_left_thin_2", "y": 90 }, - "14": { "model": "furenikusroads:junction_chevron_mid_left_thin_2", "y": 180 }, - "15": { "model": "furenikusroads:junction_chevron_mid_left_thin_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_mid_right.json b/src/main/resources/assets/furenikusroads/blockstates/white_chevron_mid_right.json deleted file mode 100644 index edde204e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_mid_right.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_chevron_mid_right_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_mid_right_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_chevron_mid_right_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_chevron_mid_right_thin_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_4": [{ - "model": "furenikusroads:junction_chevron_mid_right_thin_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_chevron_mid_right_1" }, - "1": { "model": "furenikusroads:junction_chevron_mid_right_1", "y": 90 }, - "2": { "model": "furenikusroads:junction_chevron_mid_right_1", "y": 180 }, - "3": { "model": "furenikusroads:junction_chevron_mid_right_1", "y": 270 }, - "4": { "model": "furenikusroads:junction_chevron_mid_right_2" }, - "5": { "model": "furenikusroads:junction_chevron_mid_right_2", "y": 90 }, - "6": { "model": "furenikusroads:junction_chevron_mid_right_2", "y": 180 }, - "7": { "model": "furenikusroads:junction_chevron_mid_right_2", "y": 270 }, - "8": { "model": "furenikusroads:junction_chevron_mid_right_thin_1" }, - "9": { "model": "furenikusroads:junction_chevron_mid_right_thin_1", "y": 90 }, - "10": { "model": "furenikusroads:junction_chevron_mid_right_thin_1", "y": 180 }, - "11": { "model": "furenikusroads:junction_chevron_mid_right_thin_1", "y": 270 }, - "12": { "model": "furenikusroads:junction_chevron_mid_right_thin_2" }, - "13": { "model": "furenikusroads:junction_chevron_mid_right_thin_2", "y": 90 }, - "14": { "model": "furenikusroads:junction_chevron_mid_right_thin_2", "y": 180 }, - "15": { "model": "furenikusroads:junction_chevron_mid_right_thin_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_a.json b/src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_a.json deleted file mode 100644 index 63454df2..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_a.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_chevron_right_a" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_right_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_a_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_a" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_a_thin.json b/src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_a_thin.json deleted file mode 100644 index c5b9f654..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_a_thin.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_chevron_right_a_thin" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_right_a_thin", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_a_thin_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_a_thin" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_b.json b/src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_b.json deleted file mode 100644 index 1b1b0509..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_b.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_chevron_right_b" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_right_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_b_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_b" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_b_thin.json b/src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_b_thin.json deleted file mode 100644 index b4973b44..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_right_b_thin.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_chevron_right_b_thin" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_right_b_thin", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_b_thin_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_b_thin" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_side_line.json b/src/main/resources/assets/furenikusroads/blockstates/white_chevron_side_line.json deleted file mode 100644 index eca6ec6d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_chevron_side_line.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:chevron_side_line_down_a" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:chevron_side_line_down_a", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "1": "furenikusroads:blocks/paint_white", - "2": "furenikusroads:blocks/paint_white", - "3": "furenikusroads:blocks/blank", - "4": "furenikusroads:blocks/blank" - }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "type_rotation": { - "down_n_a": { "model": "furenikusroads:chevron_side_line_down_a" }, - "down_e_a": { "model": "furenikusroads:chevron_side_line_down_a", "y": 90 }, - "down_s_a": { "model": "furenikusroads:chevron_side_line_down_a", "y": 180 }, - "down_w_a": { "model": "furenikusroads:chevron_side_line_down_a", "y": 270 }, - - "down_n_b": { "model": "furenikusroads:chevron_side_line_down_b" }, - "down_e_b": { "model": "furenikusroads:chevron_side_line_down_b", "y": 90 }, - "down_s_b": { "model": "furenikusroads:chevron_side_line_down_b", "y": 180 }, - "down_w_b": { "model": "furenikusroads:chevron_side_line_down_b", "y": 270 }, - - "up_n_a": { "model": "furenikusroads:chevron_side_line_up_a" }, - "up_e_a": { "model": "furenikusroads:chevron_side_line_up_a", "y": 90 }, - "up_s_a": { "model": "furenikusroads:chevron_side_line_up_a", "y": 180 }, - "up_w_a": { "model": "furenikusroads:chevron_side_line_up_a", "y": 270 }, - - "up_n_b": { "model": "furenikusroads:chevron_side_line_up_b" }, - "up_e_b": { "model": "furenikusroads:chevron_side_line_up_b", "y": 90 }, - "up_s_b": { "model": "furenikusroads:chevron_side_line_up_b", "y": 180 }, - "up_w_b": { "model": "furenikusroads:chevron_side_line_up_b", "y": 270 } - }, - - "connect": { - "none": { - "textures": { - "0": "furenikusroads:blocks/paint_white", - "1": "furenikusroads:blocks/blank", - "2": "furenikusroads:blocks/blank", - "3": "furenikusroads:blocks/paint_white", - "4": "furenikusroads:blocks/paint_white" - } - }, - - "line_left": { - "textures": { - "0": "furenikusroads:blocks/paint_white", - "1": "furenikusroads:blocks/paint_white", - "2": "furenikusroads:blocks/blank", - "3": "furenikusroads:blocks/blank", - "4": "furenikusroads:blocks/paint_white" - } - }, - "line_right": { - "textures": { - "0": "furenikusroads:blocks/paint_white", - "1": "furenikusroads:blocks/blank", - "2": "furenikusroads:blocks/paint_white", - "3": "furenikusroads:blocks/paint_white", - "4": "furenikusroads:blocks/blank" - } - }, - "line_both": { - "textures": { - "0": "furenikusroads:blocks/paint_white", - "1": "furenikusroads:blocks/paint_white", - "2": "furenikusroads:blocks/paint_white", - "3": "furenikusroads:blocks/blank", - "4": "furenikusroads:blocks/blank" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_city.json b/src/main/resources/assets/furenikusroads/blockstates/white_city.json deleted file mode 100644 index 8df5901c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_city.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_city" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_city" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_city" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_city" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_city" } - }, - "4": { "model": "furenikusroads:text_city_1" }, - "5": { "model": "furenikusroads:text_city_1", "y": 90 }, - "6": { "model": "furenikusroads:text_city_1", "y": 180 }, - "7": { "model": "furenikusroads:text_city_1", "y": 270 }, - "8": { "model": "furenikusroads:text_city_2" }, - "9": { "model": "furenikusroads:text_city_2", "y": 90 }, - "10": { "model": "furenikusroads:text_city_2", "y": 180 }, - "11": { "model": "furenikusroads:text_city_2", "y": 270 }, - "12": { "model": "furenikusroads:text_city_3" }, - "13": { "model": "furenikusroads:text_city_3", "y": 90 }, - "14": { "model": "furenikusroads:text_city_3", "y": 180 }, - "15": { "model": "furenikusroads:text_city_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_clear.json b/src/main/resources/assets/furenikusroads/blockstates/white_clear.json deleted file mode 100644 index 436f9f30..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_clear.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_clear" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_clear" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_clear" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_clear" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_clear" } - }, - "4": { "model": "furenikusroads:text_clear_1" }, - "5": { "model": "furenikusroads:text_clear_1", "y": 90 }, - "6": { "model": "furenikusroads:text_clear_1", "y": 180 }, - "7": { "model": "furenikusroads:text_clear_1", "y": 270 }, - "8": { "model": "furenikusroads:text_clear_2" }, - "9": { "model": "furenikusroads:text_clear_2", "y": 90 }, - "10": { "model": "furenikusroads:text_clear_2", "y": 180 }, - "11": { "model": "furenikusroads:text_clear_2", "y": 270 }, - "12": { "model": "furenikusroads:text_clear_3" }, - "13": { "model": "furenikusroads:text_clear_3", "y": 90 }, - "14": { "model": "furenikusroads:text_clear_3", "y": 180 }, - "15": { "model": "furenikusroads:text_clear_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_crossing_paint.json b/src/main/resources/assets/furenikusroads/blockstates/white_crossing_paint.json deleted file mode 100644 index 584fd0d2..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_crossing_paint.json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:crossing_paint" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/white_crossing_paint" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "model": "furenikusroads:crossing_paint_edge", "y": 270 - }, - "false": { - } - }, - "north": { - "true": { - "model": "furenikusroads:crossing_paint_edge", "y": 180 - }, - "false": { - } - }, - "south": { - "true": { - "model": "furenikusroads:crossing_paint_edge" - }, - "false": { - } - }, - "west": { - "true": { - "model": "furenikusroads:crossing_paint_edge", "y": 90 - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_ctre.json b/src/main/resources/assets/furenikusroads/blockstates/white_ctre.json deleted file mode 100644 index 047a25fe..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_ctre.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_ctre" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_ctre" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_ctre" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_ctre" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_ctre" } - }, - "4": { "model": "furenikusroads:text_ctre_1" }, - "5": { "model": "furenikusroads:text_ctre_1", "y": 90 }, - "6": { "model": "furenikusroads:text_ctre_1", "y": 180 }, - "7": { "model": "furenikusroads:text_ctre_1", "y": 270 }, - "8": { "model": "furenikusroads:text_ctre_2" }, - "9": { "model": "furenikusroads:text_ctre_2", "y": 90 }, - "10": { "model": "furenikusroads:text_ctre_2", "y": 180 }, - "11": { "model": "furenikusroads:text_ctre_2", "y": 270 }, - "12": { "model": "furenikusroads:text_ctre_3" }, - "13": { "model": "furenikusroads:text_ctre_3", "y": 90 }, - "14": { "model": "furenikusroads:text_ctre_3", "y": 180 }, - "15": { "model": "furenikusroads:text_ctre_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_entry.json b/src/main/resources/assets/furenikusroads/blockstates/white_entry.json deleted file mode 100644 index 853f081b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_entry.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_entry" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_entry" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_entry" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_entry" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_entry" } - }, - "4": { "model": "furenikusroads:text_entry_1" }, - "5": { "model": "furenikusroads:text_entry_1", "y": 90 }, - "6": { "model": "furenikusroads:text_entry_1", "y": 180 }, - "7": { "model": "furenikusroads:text_entry_1", "y": 270 }, - "8": { "model": "furenikusroads:text_entry_2" }, - "9": { "model": "furenikusroads:text_entry_2", "y": 90 }, - "10": { "model": "furenikusroads:text_entry_2", "y": 180 }, - "11": { "model": "furenikusroads:text_entry_2", "y": 270 }, - "12": { "model": "furenikusroads:text_entry_3" }, - "13": { "model": "furenikusroads:text_entry_3", "y": 90 }, - "14": { "model": "furenikusroads:text_entry_3", "y": 180 }, - "15": { "model": "furenikusroads:text_entry_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_give_way.json b/src/main/resources/assets/furenikusroads/blockstates/white_give_way.json deleted file mode 100644 index 44e5d123..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_give_way.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:icon_give_way_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/white_give_way" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "n1": { "model": "furenikusroads:icon_give_way_1" }, - "e1": { "model": "furenikusroads:icon_give_way_1", "y": 90 }, - "s1": { "model": "furenikusroads:icon_give_way_1", "y": 180 }, - "w1": { "model": "furenikusroads:icon_give_way_1", "y": 270 }, - "n2": { "model": "furenikusroads:icon_give_way_2" }, - "e2": { "model": "furenikusroads:icon_give_way_2", "y": 90 }, - "s2": { "model": "furenikusroads:icon_give_way_2", "y": 180 }, - "w2": { "model": "furenikusroads:icon_give_way_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_junction_a.json b/src/main/resources/assets/furenikusroads/blockstates/white_junction_a.json deleted file mode 100644 index e699d647..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_junction_a.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_in_a" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_in_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_out_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_mid_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_in_a" }, - "1": { "model": "furenikusroads:junction_in_a", "y": 90 }, - "2": { "model": "furenikusroads:junction_in_a", "y": 180 }, - "3": { "model": "furenikusroads:junction_in_a", "y": 270 }, - "4": { "model": "furenikusroads:junction_out_a" }, - "5": { "model": "furenikusroads:junction_out_a", "y": 90 }, - "6": { "model": "furenikusroads:junction_out_a", "y": 180 }, - "7": { "model": "furenikusroads:junction_out_a", "y": 270 }, - "8": { "model": "furenikusroads:junction_mid_a" }, - "9": { "model": "furenikusroads:junction_mid_a", "y": 90 }, - "10": { "model": "furenikusroads:junction_mid_a", "y": 180 }, - "11": { "model": "furenikusroads:junction_mid_a", "y": 270 }, - "12": { "model": "furenikusroads:nomodel" }, - "13": { "model": "furenikusroads:nomodel" }, - "14": { "model": "furenikusroads:nomodel" }, - "15": { "model": "furenikusroads:nomodel" } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_junction_b.json b/src/main/resources/assets/furenikusroads/blockstates/white_junction_b.json deleted file mode 100644 index 36417785..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_junction_b.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_in_b" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_in_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_out_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_mid_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_in_b" }, - "1": { "model": "furenikusroads:junction_in_b", "y": 90 }, - "2": { "model": "furenikusroads:junction_in_b", "y": 180 }, - "3": { "model": "furenikusroads:junction_in_b", "y": 270 }, - "4": { "model": "furenikusroads:junction_out_b" }, - "5": { "model": "furenikusroads:junction_out_b", "y": 90 }, - "6": { "model": "furenikusroads:junction_out_b", "y": 180 }, - "7": { "model": "furenikusroads:junction_out_b", "y": 270 }, - "8": { "model": "furenikusroads:junction_mid_b" }, - "9": { "model": "furenikusroads:junction_mid_b", "y": 90 }, - "10": { "model": "furenikusroads:junction_mid_b", "y": 180 }, - "11": { "model": "furenikusroads:junction_mid_b", "y": 270 }, - "12": { "model": "furenikusroads:nomodel" }, - "13": { "model": "furenikusroads:nomodel" }, - "14": { "model": "furenikusroads:nomodel" }, - "15": { "model": "furenikusroads:nomodel" } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_left.json b/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_left.json deleted file mode 100644 index ba97783d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_left.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_filter_left_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/white_junction_filter_left" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:junction_filter_left_4" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_left_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_left_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_left_1" }, - - "east_top": { "model": "furenikusroads:junction_filter_left_4", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_left_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_left_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_left_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:junction_filter_left_4", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_left_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_left_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_left_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:junction_filter_left_4", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_left_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_left_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_left_1", "y": 270 } - }, - - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_left_empty.json b/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_left_empty.json deleted file mode 100644 index 2c8bc75f..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_left_empty.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/white_junction_filter_left_empty" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:nomodel" }, - "north_bottom_mid": { "model": "furenikusroads:nomodel" }, - "north_bottom": { "model": "furenikusroads:nomodel" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_bottom": { "model": "furenikusroads:nomodel", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_bottom": { "model": "furenikusroads:nomodel", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_bottom": { "model": "furenikusroads:nomodel", "y": 270 } - }, - - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_left_thin.json b/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_left_thin.json deleted file mode 100644 index 40089557..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_left_thin.json +++ /dev/null @@ -1,144 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_filter_left_thin_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/white_junction_filter_left_thin" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:junction_filter_left_thin_4" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_left_thin_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_left_thin_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_left_thin_1" }, - - "east_top": { "model": "furenikusroads:junction_filter_left_thin_4", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_left_thin_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_left_thin_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_left_thin_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:junction_filter_left_thin_4", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_left_thin_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_left_thin_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_left_thin_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:junction_filter_left_thin_4", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_left_thin_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_left_thin_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_left_thin_1", "y": 270 } - }, - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_right.json b/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_right.json deleted file mode 100644 index 0e9a45c8..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_right.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_filter_right_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/white_junction_filter_right" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:junction_filter_right_4" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_right_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_right_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_right_1" }, - - "east_top": { "model": "furenikusroads:junction_filter_right_4", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_right_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_right_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_right_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:junction_filter_right_4", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_right_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_right_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_right_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:junction_filter_right_4", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_right_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_right_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_right_1", "y": 270 } - }, - - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_right_empty.json b/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_right_empty.json deleted file mode 100644 index c3be78cf..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_right_empty.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/white_junction_filter_right_empty" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:nomodel" }, - "north_bottom_mid": { "model": "furenikusroads:nomodel" }, - "north_bottom": { "model": "furenikusroads:nomodel" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_bottom": { "model": "furenikusroads:nomodel", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_bottom": { "model": "furenikusroads:nomodel", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_bottom": { "model": "furenikusroads:nomodel", "y": 270 } - }, - - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_right_thin.json b/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_right_thin.json deleted file mode 100644 index b959e317..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_junction_filter_right_thin.json +++ /dev/null @@ -1,144 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:junction_filter_right_thin_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/white_junction_filter_right_thin" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:junction_filter_right_thin_4" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_right_thin_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_right_thin_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_right_thin_1" }, - - "east_top": { "model": "furenikusroads:junction_filter_right_thin_4", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_right_thin_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_right_thin_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_right_thin_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:junction_filter_right_thin_4", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_right_thin_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_right_thin_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_right_thin_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:junction_filter_right_thin_4", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_right_thin_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_right_thin_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_right_thin_1", "y": 270 } - }, - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_keep.json b/src/main/resources/assets/furenikusroads/blockstates/white_keep.json deleted file mode 100644 index 45b16b28..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_keep.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_keep" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_keep" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_keep" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_keep" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_keep" } - }, - "4": { "model": "furenikusroads:text_keep_1" }, - "5": { "model": "furenikusroads:text_keep_1", "y": 90 }, - "6": { "model": "furenikusroads:text_keep_1", "y": 180 }, - "7": { "model": "furenikusroads:text_keep_1", "y": 270 }, - "8": { "model": "furenikusroads:text_keep_2" }, - "9": { "model": "furenikusroads:text_keep_2", "y": 90 }, - "10": { "model": "furenikusroads:text_keep_2", "y": 180 }, - "11": { "model": "furenikusroads:text_keep_2", "y": 270 }, - "12": { "model": "furenikusroads:text_keep_3" }, - "13": { "model": "furenikusroads:text_keep_3", "y": 90 }, - "14": { "model": "furenikusroads:text_keep_3", "y": 180 }, - "15": { "model": "furenikusroads:text_keep_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_lane.json b/src/main/resources/assets/furenikusroads/blockstates/white_lane.json deleted file mode 100644 index 1cbd1991..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_lane.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_lane" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_lane" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_lane" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_lane" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_lane" } - }, - "4": { "model": "furenikusroads:text_lane_1" }, - "5": { "model": "furenikusroads:text_lane_1", "y": 90 }, - "6": { "model": "furenikusroads:text_lane_1", "y": 180 }, - "7": { "model": "furenikusroads:text_lane_1", "y": 270 }, - "8": { "model": "furenikusroads:text_lane_2" }, - "9": { "model": "furenikusroads:text_lane_2", "y": 90 }, - "10": { "model": "furenikusroads:text_lane_2", "y": 180 }, - "11": { "model": "furenikusroads:text_lane_2", "y": 270 }, - "12": { "model": "furenikusroads:text_lane_3" }, - "13": { "model": "furenikusroads:text_lane_3", "y": 90 }, - "14": { "model": "furenikusroads:text_lane_3", "y": 180 }, - "15": { "model": "furenikusroads:text_lane_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_left.json b/src/main/resources/assets/furenikusroads/blockstates/white_left.json deleted file mode 100644 index 2137fb7d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_left.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_left" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_left" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_left" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_left" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_left" } - }, - "4": { "model": "furenikusroads:text_left_1" }, - "5": { "model": "furenikusroads:text_left_1", "y": 90 }, - "6": { "model": "furenikusroads:text_left_1", "y": 180 }, - "7": { "model": "furenikusroads:text_left_1", "y": 270 }, - "8": { "model": "furenikusroads:text_left_2" }, - "9": { "model": "furenikusroads:text_left_2", "y": 90 }, - "10": { "model": "furenikusroads:text_left_2", "y": 180 }, - "11": { "model": "furenikusroads:text_left_2", "y": 270 }, - "12": { "model": "furenikusroads:text_left_3" }, - "13": { "model": "furenikusroads:text_left_3", "y": 90 }, - "14": { "model": "furenikusroads:text_left_3", "y": 180 }, - "15": { "model": "furenikusroads:text_left_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_no.json b/src/main/resources/assets/furenikusroads/blockstates/white_no.json deleted file mode 100644 index 9f48b448..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_no.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_no" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_no" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_no" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_no" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_no" } - }, - "4": { "model": "furenikusroads:text_no_1" }, - "5": { "model": "furenikusroads:text_no_1", "y": 90 }, - "6": { "model": "furenikusroads:text_no_1", "y": 180 }, - "7": { "model": "furenikusroads:text_no_1", "y": 270 }, - "8": { "model": "furenikusroads:text_no_2" }, - "9": { "model": "furenikusroads:text_no_2", "y": 90 }, - "10": { "model": "furenikusroads:text_no_2", "y": 180 }, - "11": { "model": "furenikusroads:text_no_2", "y": 270 }, - "12": { "model": "furenikusroads:text_no_3" }, - "13": { "model": "furenikusroads:text_no_3", "y": 90 }, - "14": { "model": "furenikusroads:text_no_3", "y": 180 }, - "15": { "model": "furenikusroads:text_no_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_only.json b/src/main/resources/assets/furenikusroads/blockstates/white_only.json deleted file mode 100644 index b041c4dc..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_only.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_only" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_only" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_only" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_only" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_only" } - }, - "4": { "model": "furenikusroads:text_only_1" }, - "5": { "model": "furenikusroads:text_only_1", "y": 90 }, - "6": { "model": "furenikusroads:text_only_1", "y": 180 }, - "7": { "model": "furenikusroads:text_only_1", "y": 270 }, - "8": { "model": "furenikusroads:text_only_2" }, - "9": { "model": "furenikusroads:text_only_2", "y": 90 }, - "10": { "model": "furenikusroads:text_only_2", "y": 180 }, - "11": { "model": "furenikusroads:text_only_2", "y": 270 }, - "12": { "model": "furenikusroads:text_only_3" }, - "13": { "model": "furenikusroads:text_only_3", "y": 90 }, - "14": { "model": "furenikusroads:text_only_3", "y": 180 }, - "15": { "model": "furenikusroads:text_only_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_right.json b/src/main/resources/assets/furenikusroads/blockstates/white_right.json deleted file mode 100644 index 7b994681..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_right.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_right" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_right" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_right" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_right" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_right" } - }, - "4": { "model": "furenikusroads:text_right_1" }, - "5": { "model": "furenikusroads:text_right_1", "y": 90 }, - "6": { "model": "furenikusroads:text_right_1", "y": 180 }, - "7": { "model": "furenikusroads:text_right_1", "y": 270 }, - "8": { "model": "furenikusroads:text_right_2" }, - "9": { "model": "furenikusroads:text_right_2", "y": 90 }, - "10": { "model": "furenikusroads:text_right_2", "y": 180 }, - "11": { "model": "furenikusroads:text_right_2", "y": 270 }, - "12": { "model": "furenikusroads:text_right_3" }, - "13": { "model": "furenikusroads:text_right_3", "y": 90 }, - "14": { "model": "furenikusroads:text_right_3", "y": 180 }, - "15": { "model": "furenikusroads:text_right_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_slow.json b/src/main/resources/assets/furenikusroads/blockstates/white_slow.json deleted file mode 100644 index 52d2ae89..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_slow.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_slow" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_slow" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_slow" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_slow" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_slow" } - }, - "4": { "model": "furenikusroads:text_slow_1" }, - "5": { "model": "furenikusroads:text_slow_1", "y": 90 }, - "6": { "model": "furenikusroads:text_slow_1", "y": 180 }, - "7": { "model": "furenikusroads:text_slow_1", "y": 270 }, - "8": { "model": "furenikusroads:text_slow_2" }, - "9": { "model": "furenikusroads:text_slow_2", "y": 90 }, - "10": { "model": "furenikusroads:text_slow_2", "y": 180 }, - "11": { "model": "furenikusroads:text_slow_2", "y": 270 }, - "12": { "model": "furenikusroads:text_slow_3" }, - "13": { "model": "furenikusroads:text_slow_3", "y": 90 }, - "14": { "model": "furenikusroads:text_slow_3", "y": 180 }, - "15": { "model": "furenikusroads:text_slow_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_stop.json b/src/main/resources/assets/furenikusroads/blockstates/white_stop.json deleted file mode 100644 index 5164df4f..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_stop.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_stop" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_stop" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_stop" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_stop" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_stop" } - }, - "4": { "model": "furenikusroads:text_stop_1" }, - "5": { "model": "furenikusroads:text_stop_1", "y": 90 }, - "6": { "model": "furenikusroads:text_stop_1", "y": 180 }, - "7": { "model": "furenikusroads:text_stop_1", "y": 270 }, - "8": { "model": "furenikusroads:text_stop_2" }, - "9": { "model": "furenikusroads:text_stop_2", "y": 90 }, - "10": { "model": "furenikusroads:text_stop_2", "y": 180 }, - "11": { "model": "furenikusroads:text_stop_2", "y": 270 }, - "12": { "model": "furenikusroads:text_stop_3" }, - "13": { "model": "furenikusroads:text_stop_3", "y": 90 }, - "14": { "model": "furenikusroads:text_stop_3", "y": 180 }, - "15": { "model": "furenikusroads:text_stop_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_taxi.json b/src/main/resources/assets/furenikusroads/blockstates/white_taxi.json deleted file mode 100644 index dea1efbb..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_taxi.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_taxi" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_taxi" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_taxi" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_taxi" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_taxi" } - }, - "4": { "model": "furenikusroads:text_taxi_1" }, - "5": { "model": "furenikusroads:text_taxi_1", "y": 90 }, - "6": { "model": "furenikusroads:text_taxi_1", "y": 180 }, - "7": { "model": "furenikusroads:text_taxi_1", "y": 270 }, - "8": { "model": "furenikusroads:text_taxi_2" }, - "9": { "model": "furenikusroads:text_taxi_2", "y": 90 }, - "10": { "model": "furenikusroads:text_taxi_2", "y": 180 }, - "11": { "model": "furenikusroads:text_taxi_2", "y": 270 }, - "12": { "model": "furenikusroads:text_taxi_3" }, - "13": { "model": "furenikusroads:text_taxi_3", "y": 90 }, - "14": { "model": "furenikusroads:text_taxi_3", "y": 180 }, - "15": { "model": "furenikusroads:text_taxi_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_town.json b/src/main/resources/assets/furenikusroads/blockstates/white_town.json deleted file mode 100644 index 171b28e9..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_town.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_town" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_town" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_town" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_town" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_town" } - }, - "4": { "model": "furenikusroads:text_town_1" }, - "5": { "model": "furenikusroads:text_town_1", "y": 90 }, - "6": { "model": "furenikusroads:text_town_1", "y": 180 }, - "7": { "model": "furenikusroads:text_town_1", "y": 270 }, - "8": { "model": "furenikusroads:text_town_2" }, - "9": { "model": "furenikusroads:text_town_2", "y": 90 }, - "10": { "model": "furenikusroads:text_town_2", "y": 180 }, - "11": { "model": "furenikusroads:text_town_2", "y": 270 }, - "12": { "model": "furenikusroads:text_town_3" }, - "13": { "model": "furenikusroads:text_town_3", "y": 90 }, - "14": { "model": "furenikusroads:text_town_3", "y": 180 }, - "15": { "model": "furenikusroads:text_town_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/white_turn.json b/src/main/resources/assets/furenikusroads/blockstates/white_turn.json deleted file mode 100644 index 123b9c8d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/white_turn.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_white", - "particle": "furenikusroads:blocks/paint_white" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_turn" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/white_turn" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/white_turn" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/white_turn" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/white_turn" } - }, - "4": { "model": "furenikusroads:text_turn_1" }, - "5": { "model": "furenikusroads:text_turn_1", "y": 90 }, - "6": { "model": "furenikusroads:text_turn_1", "y": 180 }, - "7": { "model": "furenikusroads:text_turn_1", "y": 270 }, - "8": { "model": "furenikusroads:text_turn_2" }, - "9": { "model": "furenikusroads:text_turn_2", "y": 90 }, - "10": { "model": "furenikusroads:text_turn_2", "y": 180 }, - "11": { "model": "furenikusroads:text_turn_2", "y": 270 }, - "12": { "model": "furenikusroads:text_turn_3" }, - "13": { "model": "furenikusroads:text_turn_3", "y": 90 }, - "14": { "model": "furenikusroads:text_turn_3", "y": 180 }, - "15": { "model": "furenikusroads:text_turn_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_arrow.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_arrow.json deleted file mode 100644 index 3db72f12..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_arrow.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_arrow" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_arrow", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_arrow_4" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:tile_arrow" }, - "1": { "model": "furenikusroads:tile_arrow", "y": 90 }, - "2": { "model": "furenikusroads:tile_arrow", "y": 180 }, - "3": { "model": "furenikusroads:tile_arrow", "y": 270 }, - "4": { "model": "furenikusroads:tile_arrow_side" }, - "5": { "model": "furenikusroads:tile_arrow_side", "y": 90 }, - "6": { "model": "furenikusroads:tile_arrow_side", "y": 180 }, - "7": { "model": "furenikusroads:tile_arrow_side", "y": 270 }, - "8": { "model": "furenikusroads:tile_arrow_side", "x": 270 }, - "9": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 90 }, - "10": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 180 }, - "11": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 270 }, - "12": { "model": "furenikusroads:tile_arrow_side", "x": 270 }, - "13": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 90 }, - "14": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 180 }, - "15": { "model": "furenikusroads:tile_arrow_side", "x": 270, "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_arrow_diagonal.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_arrow_diagonal.json deleted file mode 100644 index b03dc13d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_arrow_diagonal.json +++ /dev/null @@ -1,61 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_arrow_diagonal" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_arrow_diagonal" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_arrow_diagonal_4" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:tile_arrow_diagonal" }, - "1": { "model": "furenikusroads:tile_arrow_diagonal", "y": 90 }, - "2": { "model": "furenikusroads:tile_arrow_diagonal", "y": 180 }, - "3": { "model": "furenikusroads:tile_arrow_diagonal", "y": 270 }, - "4": { "model": "furenikusroads:tile_arrow_diagonal_line_full" }, - "5": { "model": "furenikusroads:tile_arrow_diagonal_line_full", "y": 90 }, - "6": { "model": "furenikusroads:tile_arrow_diagonal_line_full", "y": 180 }, - "7": { "model": "furenikusroads:tile_arrow_diagonal_line_full", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_arrow_line.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_arrow_line.json deleted file mode 100644 index 669ec3a9..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_arrow_line.json +++ /dev/null @@ -1,82 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_arrow_line" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_arrow_line_inv", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "facing": { - "north": { "model": "furenikusroads:tile_arrow_line" }, - "east": { "model": "furenikusroads:tile_arrow_line", "y": 90 }, - "south": { "model": "furenikusroads:tile_arrow_line", "y": 180 }, - "west": { "model": "furenikusroads:tile_arrow_line", "y": 270 } - }, - "connect": { - "none": {}, - "connect_left": { - "model": "furenikusroads:tile_arrow_line_connect_left_full" - }, - "connect_right": { - "model": "furenikusroads:tile_arrow_line_connect_right_full" - }, - "connect_up": { - "submodel": { - "up": { "model": "furenikusroads:tile_arrow_line_connect_up" } - } - }, - "connect_left_right": { - "submodel": { - "left": { "model": "furenikusroads:tile_arrow_line_connect_left" }, - "right": { "model": "furenikusroads:tile_arrow_line_connect_right" } - } - }, - "connect_left_up": { - "submodel": { - "left": { "model": "furenikusroads:tile_arrow_line_connect_left" }, - "up": { "model": "furenikusroads:tile_arrow_line_connect_up" } - } - }, - "connect_right_up": { - "submodel": { - "right": { "model": "furenikusroads:tile_arrow_line_connect_right" }, - "up": { "model": "furenikusroads:tile_arrow_line_connect_up" } - } - }, - "connect_left_right_up": { - "submodel": { - "left": { "model": "furenikusroads:tile_arrow_line_connect_left" }, - "right": { "model": "furenikusroads:tile_arrow_line_connect_right" }, - "up": { "model": "furenikusroads:tile_arrow_line_connect_up" } - } - }, - "connect_left_diagonal": { - "model": "furenikusroads:tile_arrow_line_connect_diagonal_left" - }, - "connect_right_diagonal": { - "model": "furenikusroads:tile_arrow_line_connect_diagonal_right" - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_bike.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_bike.json deleted file mode 100644 index dd2dc02e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_bike.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_bike" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_bike" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_bike" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_bike" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_bike" } - }, - "4": { "model": "furenikusroads:text_bike_1" }, - "5": { "model": "furenikusroads:text_bike_1", "y": 90 }, - "6": { "model": "furenikusroads:text_bike_1", "y": 180 }, - "7": { "model": "furenikusroads:text_bike_1", "y": 270 }, - "8": { "model": "furenikusroads:text_bike_2" }, - "9": { "model": "furenikusroads:text_bike_2", "y": 90 }, - "10": { "model": "furenikusroads:text_bike_2", "y": 180 }, - "11": { "model": "furenikusroads:text_bike_2", "y": 270 }, - "12": { "model": "furenikusroads:text_bike_3" }, - "13": { "model": "furenikusroads:text_bike_3", "y": 90 }, - "14": { "model": "furenikusroads:text_bike_3", "y": 180 }, - "15": { "model": "furenikusroads:text_bike_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_bike_icon.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_bike_icon.json deleted file mode 100644 index cb07e8e8..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_bike_icon.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_bike_icon" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_bike_icon" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_bike_icon" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_bike_icon" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_bike_icon" } - }, - "4": { "model": "furenikusroads:text_bike_icon_1" }, - "5": { "model": "furenikusroads:text_bike_icon_1", "y": 90 }, - "6": { "model": "furenikusroads:text_bike_icon_1", "y": 180 }, - "7": { "model": "furenikusroads:text_bike_icon_1", "y": 270 }, - "8": { "model": "furenikusroads:text_bike_icon_2" }, - "9": { "model": "furenikusroads:text_bike_icon_2", "y": 90 }, - "10": { "model": "furenikusroads:text_bike_icon_2", "y": 180 }, - "11": { "model": "furenikusroads:text_bike_icon_2", "y": 270 }, - "12": { "model": "furenikusroads:text_bike_icon_3" }, - "13": { "model": "furenikusroads:text_bike_icon_3", "y": 90 }, - "14": { "model": "furenikusroads:text_bike_icon_3", "y": 180 }, - "15": { "model": "furenikusroads:text_bike_icon_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_bus.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_bus.json deleted file mode 100644 index 2012934b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_bus.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_bus" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_bus" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_bus" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_bus" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_bus" } - }, - "4": { "model": "furenikusroads:text_bus_1" }, - "5": { "model": "furenikusroads:text_bus_1", "y": 90 }, - "6": { "model": "furenikusroads:text_bus_1", "y": 180 }, - "7": { "model": "furenikusroads:text_bus_1", "y": 270 }, - "8": { "model": "furenikusroads:text_bus_2" }, - "9": { "model": "furenikusroads:text_bus_2", "y": 90 }, - "10": { "model": "furenikusroads:text_bus_2", "y": 180 }, - "11": { "model": "furenikusroads:text_bus_2", "y": 270 }, - "12": { "model": "furenikusroads:text_bus_3" }, - "13": { "model": "furenikusroads:text_bus_3", "y": 90 }, - "14": { "model": "furenikusroads:text_bus_3", "y": 180 }, - "15": { "model": "furenikusroads:text_bus_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_a.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_a.json deleted file mode 100644 index afdef398..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_a.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_chevron_left_a" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_left_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_a_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_a" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_a_thin.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_a_thin.json deleted file mode 100644 index e8537ff1..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_a_thin.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_chevron_left_a_thin" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_left_a_thin", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_a_thin_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_a_thin" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_b.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_b.json deleted file mode 100644 index f6b81795..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_b.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_chevron_left_b" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_left_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_b_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_b" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_b_thin.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_b_thin.json deleted file mode 100644 index ab3a7e6e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_left_b_thin.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_chevron_left_b_thin" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_left_b_thin", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_b_thin_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_left_b_thin" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_mid.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_mid.json deleted file mode 100644 index bb9beb75..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_mid.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_chevron_mid_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_mid_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_chevron_mid_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_chevron_mid_thin_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_4": [{ - "model": "furenikusroads:junction_chevron_mid_thin_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_chevron_mid_1" }, - "1": { "model": "furenikusroads:junction_chevron_mid_1", "y": 90 }, - "2": { "model": "furenikusroads:junction_chevron_mid_1", "y": 180 }, - "3": { "model": "furenikusroads:junction_chevron_mid_1", "y": 270 }, - "4": { "model": "furenikusroads:junction_chevron_mid_2" }, - "5": { "model": "furenikusroads:junction_chevron_mid_2", "y": 90 }, - "6": { "model": "furenikusroads:junction_chevron_mid_2", "y": 180 }, - "7": { "model": "furenikusroads:junction_chevron_mid_2", "y": 270 }, - "8": { "model": "furenikusroads:junction_chevron_mid_thin_1" }, - "9": { "model": "furenikusroads:junction_chevron_mid_thin_1", "y": 90 }, - "10": { "model": "furenikusroads:junction_chevron_mid_thin_1", "y": 180 }, - "11": { "model": "furenikusroads:junction_chevron_mid_thin_1", "y": 270 }, - "12": { "model": "furenikusroads:junction_chevron_mid_thin_2" }, - "13": { "model": "furenikusroads:junction_chevron_mid_thin_2", "y": 90 }, - "14": { "model": "furenikusroads:junction_chevron_mid_thin_2", "y": 180 }, - "15": { "model": "furenikusroads:junction_chevron_mid_thin_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_mid_left.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_mid_left.json deleted file mode 100644 index 2fcd82e7..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_mid_left.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_chevron_mid_left_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_mid_left_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_chevron_mid_left_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_chevron_mid_left_thin_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_4": [{ - "model": "furenikusroads:junction_chevron_mid_left_thin_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_chevron_mid_left_1" }, - "1": { "model": "furenikusroads:junction_chevron_mid_left_1", "y": 90 }, - "2": { "model": "furenikusroads:junction_chevron_mid_left_1", "y": 180 }, - "3": { "model": "furenikusroads:junction_chevron_mid_left_1", "y": 270 }, - "4": { "model": "furenikusroads:junction_chevron_mid_left_2" }, - "5": { "model": "furenikusroads:junction_chevron_mid_left_2", "y": 90 }, - "6": { "model": "furenikusroads:junction_chevron_mid_left_2", "y": 180 }, - "7": { "model": "furenikusroads:junction_chevron_mid_left_2", "y": 270 }, - "8": { "model": "furenikusroads:junction_chevron_mid_left_thin_1" }, - "9": { "model": "furenikusroads:junction_chevron_mid_left_thin_1", "y": 90 }, - "10": { "model": "furenikusroads:junction_chevron_mid_left_thin_1", "y": 180 }, - "11": { "model": "furenikusroads:junction_chevron_mid_left_thin_1", "y": 270 }, - "12": { "model": "furenikusroads:junction_chevron_mid_left_thin_2" }, - "13": { "model": "furenikusroads:junction_chevron_mid_left_thin_2", "y": 90 }, - "14": { "model": "furenikusroads:junction_chevron_mid_left_thin_2", "y": 180 }, - "15": { "model": "furenikusroads:junction_chevron_mid_left_thin_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_mid_right.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_mid_right.json deleted file mode 100644 index 25a45087..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_mid_right.json +++ /dev/null @@ -1,103 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_chevron_mid_right_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_mid_right_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_chevron_mid_right_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_chevron_mid_right_thin_1", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_4": [{ - "model": "furenikusroads:junction_chevron_mid_right_thin_2", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_chevron_mid_right_1" }, - "1": { "model": "furenikusroads:junction_chevron_mid_right_1", "y": 90 }, - "2": { "model": "furenikusroads:junction_chevron_mid_right_1", "y": 180 }, - "3": { "model": "furenikusroads:junction_chevron_mid_right_1", "y": 270 }, - "4": { "model": "furenikusroads:junction_chevron_mid_right_2" }, - "5": { "model": "furenikusroads:junction_chevron_mid_right_2", "y": 90 }, - "6": { "model": "furenikusroads:junction_chevron_mid_right_2", "y": 180 }, - "7": { "model": "furenikusroads:junction_chevron_mid_right_2", "y": 270 }, - "8": { "model": "furenikusroads:junction_chevron_mid_right_thin_1" }, - "9": { "model": "furenikusroads:junction_chevron_mid_right_thin_1", "y": 90 }, - "10": { "model": "furenikusroads:junction_chevron_mid_right_thin_1", "y": 180 }, - "11": { "model": "furenikusroads:junction_chevron_mid_right_thin_1", "y": 270 }, - "12": { "model": "furenikusroads:junction_chevron_mid_right_thin_2" }, - "13": { "model": "furenikusroads:junction_chevron_mid_right_thin_2", "y": 90 }, - "14": { "model": "furenikusroads:junction_chevron_mid_right_thin_2", "y": 180 }, - "15": { "model": "furenikusroads:junction_chevron_mid_right_thin_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_a.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_a.json deleted file mode 100644 index c7aa4c55..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_a.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_chevron_right_a" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_right_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_a_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_a" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_a_thin.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_a_thin.json deleted file mode 100644 index 04687df2..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_a_thin.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_chevron_right_a_thin" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_right_a_thin", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_a_thin_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_a_thin" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_b.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_b.json deleted file mode 100644 index f7a0951e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_b.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_chevron_right_b" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_right_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_b_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_b" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_b_thin.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_b_thin.json deleted file mode 100644 index 81fe6d55..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_right_b_thin.json +++ /dev/null @@ -1,54 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_chevron_right_b_thin" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_chevron_right_b_thin", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "rotation": { - "north": { "model": "furenikusroads:nomodel" }, - "east": { "model": "furenikusroads:nomodel", "y": 90 }, - "south": { "model": "furenikusroads:nomodel", "y": 180 }, - "west": { "model": "furenikusroads:nomodel", "y": 270 } - }, - "connect": { - "none": {}, - "chevron_a": {}, - "chevron_b": {}, - "chevron_thin_a": {}, - "chevron_thin_b": {} - }, - "edge": { - "true": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_b_thin_edge" }}}, - "false": { "submodel": { "block": { "model": "furenikusroads:junction_chevron_right_b_thin" }}} - }, - "hide": { - "true": { - "textures": { "0": "furenikusroads:blocks/blank" } - }, - "false": {} - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_side_line.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_side_line.json deleted file mode 100644 index 4fe385c2..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_chevron_side_line.json +++ /dev/null @@ -1,99 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:chevron_side_line_down_a" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:chevron_side_line_down_a", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "1": "furenikusroads:blocks/paint_yellow", - "2": "furenikusroads:blocks/paint_yellow", - "3": "furenikusroads:blocks/blank", - "4": "furenikusroads:blocks/blank" - }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "type_rotation": { - "down_n_a": { "model": "furenikusroads:chevron_side_line_down_a" }, - "down_e_a": { "model": "furenikusroads:chevron_side_line_down_a", "y": 90 }, - "down_s_a": { "model": "furenikusroads:chevron_side_line_down_a", "y": 180 }, - "down_w_a": { "model": "furenikusroads:chevron_side_line_down_a", "y": 270 }, - - "down_n_b": { "model": "furenikusroads:chevron_side_line_down_b" }, - "down_e_b": { "model": "furenikusroads:chevron_side_line_down_b", "y": 90 }, - "down_s_b": { "model": "furenikusroads:chevron_side_line_down_b", "y": 180 }, - "down_w_b": { "model": "furenikusroads:chevron_side_line_down_b", "y": 270 }, - - "up_n_a": { "model": "furenikusroads:chevron_side_line_up_a" }, - "up_e_a": { "model": "furenikusroads:chevron_side_line_up_a", "y": 90 }, - "up_s_a": { "model": "furenikusroads:chevron_side_line_up_a", "y": 180 }, - "up_w_a": { "model": "furenikusroads:chevron_side_line_up_a", "y": 270 }, - - "up_n_b": { "model": "furenikusroads:chevron_side_line_up_b" }, - "up_e_b": { "model": "furenikusroads:chevron_side_line_up_b", "y": 90 }, - "up_s_b": { "model": "furenikusroads:chevron_side_line_up_b", "y": 180 }, - "up_w_b": { "model": "furenikusroads:chevron_side_line_up_b", "y": 270 } - }, - - "connect": { - "none": { - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "1": "furenikusroads:blocks/blank", - "2": "furenikusroads:blocks/blank", - "3": "furenikusroads:blocks/paint_yellow", - "4": "furenikusroads:blocks/paint_yellow" - } - }, - - "line_left": { - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "1": "furenikusroads:blocks/paint_yellow", - "2": "furenikusroads:blocks/blank", - "3": "furenikusroads:blocks/blank", - "4": "furenikusroads:blocks/paint_yellow" - } - }, - "line_right": { - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "1": "furenikusroads:blocks/blank", - "2": "furenikusroads:blocks/paint_yellow", - "3": "furenikusroads:blocks/paint_yellow", - "4": "furenikusroads:blocks/blank" - } - }, - "line_both": { - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "1": "furenikusroads:blocks/paint_yellow", - "2": "furenikusroads:blocks/paint_yellow", - "3": "furenikusroads:blocks/blank", - "4": "furenikusroads:blocks/blank" - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_city.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_city.json deleted file mode 100644 index 77e599c6..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_city.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_city" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_city" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_city" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_city" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_city" } - }, - "4": { "model": "furenikusroads:text_city_1" }, - "5": { "model": "furenikusroads:text_city_1", "y": 90 }, - "6": { "model": "furenikusroads:text_city_1", "y": 180 }, - "7": { "model": "furenikusroads:text_city_1", "y": 270 }, - "8": { "model": "furenikusroads:text_city_2" }, - "9": { "model": "furenikusroads:text_city_2", "y": 90 }, - "10": { "model": "furenikusroads:text_city_2", "y": 180 }, - "11": { "model": "furenikusroads:text_city_2", "y": 270 }, - "12": { "model": "furenikusroads:text_city_3" }, - "13": { "model": "furenikusroads:text_city_3", "y": 90 }, - "14": { "model": "furenikusroads:text_city_3", "y": 180 }, - "15": { "model": "furenikusroads:text_city_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_clear.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_clear.json deleted file mode 100644 index 660fc636..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_clear.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_clear" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_clear" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_clear" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_clear" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_clear" } - }, - "4": { "model": "furenikusroads:text_clear_1" }, - "5": { "model": "furenikusroads:text_clear_1", "y": 90 }, - "6": { "model": "furenikusroads:text_clear_1", "y": 180 }, - "7": { "model": "furenikusroads:text_clear_1", "y": 270 }, - "8": { "model": "furenikusroads:text_clear_2" }, - "9": { "model": "furenikusroads:text_clear_2", "y": 90 }, - "10": { "model": "furenikusroads:text_clear_2", "y": 180 }, - "11": { "model": "furenikusroads:text_clear_2", "y": 270 }, - "12": { "model": "furenikusroads:text_clear_3" }, - "13": { "model": "furenikusroads:text_clear_3", "y": 90 }, - "14": { "model": "furenikusroads:text_clear_3", "y": 180 }, - "15": { "model": "furenikusroads:text_clear_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_crossing_paint.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_crossing_paint.json deleted file mode 100644 index bb0ebffa..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_crossing_paint.json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:crossing_paint" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_crossing_paint" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "east": { - "true": { - "model": "furenikusroads:crossing_paint_edge", "y": 270 - }, - "false": { - } - }, - "north": { - "true": { - "model": "furenikusroads:crossing_paint_edge", "y": 180 - }, - "false": { - } - }, - "south": { - "true": { - "model": "furenikusroads:crossing_paint_edge" - }, - "false": { - } - }, - "west": { - "true": { - "model": "furenikusroads:crossing_paint_edge", "y": 90 - }, - "false": { - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_ctre.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_ctre.json deleted file mode 100644 index deea1c78..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_ctre.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_ctre" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_ctre" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_ctre" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_ctre" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_ctre" } - }, - "4": { "model": "furenikusroads:text_ctre_1" }, - "5": { "model": "furenikusroads:text_ctre_1", "y": 90 }, - "6": { "model": "furenikusroads:text_ctre_1", "y": 180 }, - "7": { "model": "furenikusroads:text_ctre_1", "y": 270 }, - "8": { "model": "furenikusroads:text_ctre_2" }, - "9": { "model": "furenikusroads:text_ctre_2", "y": 90 }, - "10": { "model": "furenikusroads:text_ctre_2", "y": 180 }, - "11": { "model": "furenikusroads:text_ctre_2", "y": 270 }, - "12": { "model": "furenikusroads:text_ctre_3" }, - "13": { "model": "furenikusroads:text_ctre_3", "y": 90 }, - "14": { "model": "furenikusroads:text_ctre_3", "y": 180 }, - "15": { "model": "furenikusroads:text_ctre_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_entry.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_entry.json deleted file mode 100644 index 3525391a..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_entry.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_entry" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_entry" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_entry" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_entry" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_entry" } - }, - "4": { "model": "furenikusroads:text_entry_1" }, - "5": { "model": "furenikusroads:text_entry_1", "y": 90 }, - "6": { "model": "furenikusroads:text_entry_1", "y": 180 }, - "7": { "model": "furenikusroads:text_entry_1", "y": 270 }, - "8": { "model": "furenikusroads:text_entry_2" }, - "9": { "model": "furenikusroads:text_entry_2", "y": 90 }, - "10": { "model": "furenikusroads:text_entry_2", "y": 180 }, - "11": { "model": "furenikusroads:text_entry_2", "y": 270 }, - "12": { "model": "furenikusroads:text_entry_3" }, - "13": { "model": "furenikusroads:text_entry_3", "y": 90 }, - "14": { "model": "furenikusroads:text_entry_3", "y": 180 }, - "15": { "model": "furenikusroads:text_entry_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_give_way.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_give_way.json deleted file mode 100644 index 5c94ffbd..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_give_way.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:icon_give_way_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_give_way" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "n1": { "model": "furenikusroads:icon_give_way_1" }, - "e1": { "model": "furenikusroads:icon_give_way_1", "y": 90 }, - "s1": { "model": "furenikusroads:icon_give_way_1", "y": 180 }, - "w1": { "model": "furenikusroads:icon_give_way_1", "y": 270 }, - "n2": { "model": "furenikusroads:icon_give_way_2" }, - "e2": { "model": "furenikusroads:icon_give_way_2", "y": 90 }, - "s2": { "model": "furenikusroads:icon_give_way_2", "y": 180 }, - "w2": { "model": "furenikusroads:icon_give_way_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_a.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_a.json deleted file mode 100644 index 69e112fa..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_a.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_in_a" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_in_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_out_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_mid_a", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_in_a" }, - "1": { "model": "furenikusroads:junction_in_a", "y": 90 }, - "2": { "model": "furenikusroads:junction_in_a", "y": 180 }, - "3": { "model": "furenikusroads:junction_in_a", "y": 270 }, - "4": { "model": "furenikusroads:junction_out_a" }, - "5": { "model": "furenikusroads:junction_out_a", "y": 90 }, - "6": { "model": "furenikusroads:junction_out_a", "y": 180 }, - "7": { "model": "furenikusroads:junction_out_a", "y": 270 }, - "8": { "model": "furenikusroads:junction_mid_a" }, - "9": { "model": "furenikusroads:junction_mid_a", "y": 90 }, - "10": { "model": "furenikusroads:junction_mid_a", "y": 180 }, - "11": { "model": "furenikusroads:junction_mid_a", "y": 270 }, - "12": { "model": "furenikusroads:nomodel" }, - "13": { "model": "furenikusroads:nomodel" }, - "14": { "model": "furenikusroads:nomodel" }, - "15": { "model": "furenikusroads:nomodel" } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_b.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_b.json deleted file mode 100644 index d286750b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_b.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_in_b" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:junction_in_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_2": [{ - "model": "furenikusroads:junction_out_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "inventory_3": [{ - "model": "furenikusroads:junction_mid_b", - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { "model": "furenikusroads:junction_in_b" }, - "1": { "model": "furenikusroads:junction_in_b", "y": 90 }, - "2": { "model": "furenikusroads:junction_in_b", "y": 180 }, - "3": { "model": "furenikusroads:junction_in_b", "y": 270 }, - "4": { "model": "furenikusroads:junction_out_b" }, - "5": { "model": "furenikusroads:junction_out_b", "y": 90 }, - "6": { "model": "furenikusroads:junction_out_b", "y": 180 }, - "7": { "model": "furenikusroads:junction_out_b", "y": 270 }, - "8": { "model": "furenikusroads:junction_mid_b" }, - "9": { "model": "furenikusroads:junction_mid_b", "y": 90 }, - "10": { "model": "furenikusroads:junction_mid_b", "y": 180 }, - "11": { "model": "furenikusroads:junction_mid_b", "y": 270 }, - "12": { "model": "furenikusroads:nomodel" }, - "13": { "model": "furenikusroads:nomodel" }, - "14": { "model": "furenikusroads:nomodel" }, - "15": { "model": "furenikusroads:nomodel" } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_left.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_left.json deleted file mode 100644 index 22a9e88c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_left.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "1": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_filter_left_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_junction_filter_left" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:junction_filter_left_4" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_left_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_left_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_left_1" }, - - "east_top": { "model": "furenikusroads:junction_filter_left_4", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_left_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_left_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_left_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:junction_filter_left_4", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_left_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_left_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_left_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:junction_filter_left_4", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_left_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_left_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_left_1", "y": 270 } - }, - - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_left_empty.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_left_empty.json deleted file mode 100644 index 37c8d205..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_left_empty.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "1": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_junction_filter_left_empty" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:nomodel" }, - "north_bottom_mid": { "model": "furenikusroads:nomodel" }, - "north_bottom": { "model": "furenikusroads:nomodel" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_bottom": { "model": "furenikusroads:nomodel", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_bottom": { "model": "furenikusroads:nomodel", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_bottom": { "model": "furenikusroads:nomodel", "y": 270 } - }, - - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_left_thin.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_left_thin.json deleted file mode 100644 index 0fbc7c10..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_left_thin.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "1": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_filter_left_thin_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_junction_filter_left_thin" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:junction_filter_left_thin_4" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_left_thin_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_left_thin_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_left_thin_1" }, - - "east_top": { "model": "furenikusroads:junction_filter_left_thin_4", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_left_thin_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_left_thin_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_left_thin_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:junction_filter_left_thin_4", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_left_thin_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_left_thin_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_left_thin_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:junction_filter_left_thin_4", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_left_thin_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_left_thin_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_left_thin_1", "y": 270 } - }, - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_left_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_right.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_right.json deleted file mode 100644 index 4ce89a8f..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_right.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "1": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_filter_right_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_junction_filter_right" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:junction_filter_right_4" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_right_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_right_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_right_1" }, - - "east_top": { "model": "furenikusroads:junction_filter_right_4", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_right_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_right_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_right_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:junction_filter_right_4", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_right_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_right_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_right_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:junction_filter_right_4", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_right_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_right_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_right_1", "y": 270 } - }, - - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_right_empty.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_right_empty.json deleted file mode 100644 index c012055e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_right_empty.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "1": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:nomodel" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_junction_filter_right_empty" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:nomodel" }, - "north_bottom_mid": { "model": "furenikusroads:nomodel" }, - "north_bottom": { "model": "furenikusroads:nomodel" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_bottom": { "model": "furenikusroads:nomodel", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_bottom": { "model": "furenikusroads:nomodel", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_bottom": { "model": "furenikusroads:nomodel", "y": 270 } - }, - - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_right_thin.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_right_thin.json deleted file mode 100644 index 5f481a23..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_filter_right_thin.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "1": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_filter_right_thin_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_junction_filter_right_thin" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:junction_filter_right_thin_4" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_right_thin_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_right_thin_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_right_thin_1" }, - - "east_top": { "model": "furenikusroads:junction_filter_right_thin_4", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_right_thin_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_right_thin_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_right_thin_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:junction_filter_right_thin_4", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_right_thin_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_right_thin_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_right_thin_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:junction_filter_right_thin_4", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_right_thin_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_right_thin_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_right_thin_1", "y": 270 } - }, - "connect": { - "none": { - "submodel": { - "chevron": { "model": "furenikusroads:nomodel" } - } - }, - - "top_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_4" } - } - }, - "top_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_4" } - } - }, - "top_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_4" } - } - }, - "top_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_4" } - } - }, - - "top_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_3" } - } - }, - "top_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_3" } - } - }, - "top_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_3" } - } - }, - "top_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_3" } - } - }, - - "bottom_mid_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_2" } - } - }, - "bottom_mid_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_2" } - } - }, - "bottom_mid_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_2" } - } - }, - "bottom_mid_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_2" } - } - }, - - "bottom_chevron_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_a_1" } - } - }, - "bottom_chevron_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_b_1" } - } - }, - "bottom_chevron_thin_a": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_a_1" } - } - }, - "bottom_chevron_thin_b": { - "submodel": { - "chevron": { "model": "furenikusroads:junction_chevron_right_down_thin_b_1" } - } - } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_chevron_mid.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_chevron_mid.json deleted file mode 100644 index 778c79f8..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_chevron_mid.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_filter_chevron_mid_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_junction_fork_chevron_mid" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_1" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_1", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_chevron_mid_thin.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_chevron_mid_thin.json deleted file mode 100644 index 8ddabd69..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_chevron_mid_thin.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_filter_chevron_mid_thin_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_junction_fork_chevron_mid_thin" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_thin_1" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_thin_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_thin_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_chevron_mid_thin_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_chevron_mid_thin_1", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_mid.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_mid.json deleted file mode 100644 index f0bfb0e5..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_mid.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_filter_mid_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_junction_fork_mid" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_mid_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_mid_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_mid_1" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_mid_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_mid_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_mid_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_mid_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_mid_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_mid_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_mid_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_mid_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_mid_1", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_mid_thin.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_mid_thin.json deleted file mode 100644 index c9026a8e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_junction_fork_mid_thin.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:junction_filter_mid_thin_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_junction_fork_mid_thin" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "north_top": { "model": "furenikusroads:nomodel" }, - "north_top_mid": { "model": "furenikusroads:junction_filter_mid_thin_3" }, - "north_bottom_mid": { "model": "furenikusroads:junction_filter_mid_thin_2" }, - "north_bottom": { "model": "furenikusroads:junction_filter_mid_thin_1" }, - - "east_top": { "model": "furenikusroads:nomodel", "y": 90 }, - "east_top_mid": { "model": "furenikusroads:junction_filter_mid_thin_3", "y": 90 }, - "east_bottom_mid": { "model": "furenikusroads:junction_filter_mid_thin_2", "y": 90 }, - "east_bottom": { "model": "furenikusroads:junction_filter_mid_thin_1", "y": 90 }, - - "south_top": { "model": "furenikusroads:nomodel", "y": 180 }, - "south_top_mid": { "model": "furenikusroads:junction_filter_mid_thin_3", "y": 180 }, - "south_bottom_mid": { "model": "furenikusroads:junction_filter_mid_thin_2", "y": 180 }, - "south_bottom": { "model": "furenikusroads:junction_filter_mid_thin_1", "y": 180 }, - - "west_top": { "model": "furenikusroads:nomodel", "y": 270 }, - "west_top_mid": { "model": "furenikusroads:junction_filter_mid_thin_3", "y": 270 }, - "west_bottom_mid": { "model": "furenikusroads:junction_filter_mid_thin_2", "y": 270 }, - "west_bottom": { "model": "furenikusroads:junction_filter_mid_thin_1", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_keep.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_keep.json deleted file mode 100644 index 0689592e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_keep.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_keep" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_keep" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_keep" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_keep" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_keep" } - }, - "4": { "model": "furenikusroads:text_keep_1" }, - "5": { "model": "furenikusroads:text_keep_1", "y": 90 }, - "6": { "model": "furenikusroads:text_keep_1", "y": 180 }, - "7": { "model": "furenikusroads:text_keep_1", "y": 270 }, - "8": { "model": "furenikusroads:text_keep_2" }, - "9": { "model": "furenikusroads:text_keep_2", "y": 90 }, - "10": { "model": "furenikusroads:text_keep_2", "y": 180 }, - "11": { "model": "furenikusroads:text_keep_2", "y": 270 }, - "12": { "model": "furenikusroads:text_keep_3" }, - "13": { "model": "furenikusroads:text_keep_3", "y": 90 }, - "14": { "model": "furenikusroads:text_keep_3", "y": 180 }, - "15": { "model": "furenikusroads:text_keep_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_lane.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_lane.json deleted file mode 100644 index c319880d..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_lane.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_lane" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_lane" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_lane" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_lane" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_lane" } - }, - "4": { "model": "furenikusroads:text_lane_1" }, - "5": { "model": "furenikusroads:text_lane_1", "y": 90 }, - "6": { "model": "furenikusroads:text_lane_1", "y": 180 }, - "7": { "model": "furenikusroads:text_lane_1", "y": 270 }, - "8": { "model": "furenikusroads:text_lane_2" }, - "9": { "model": "furenikusroads:text_lane_2", "y": 90 }, - "10": { "model": "furenikusroads:text_lane_2", "y": 180 }, - "11": { "model": "furenikusroads:text_lane_2", "y": 270 }, - "12": { "model": "furenikusroads:text_lane_3" }, - "13": { "model": "furenikusroads:text_lane_3", "y": 90 }, - "14": { "model": "furenikusroads:text_lane_3", "y": 180 }, - "15": { "model": "furenikusroads:text_lane_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_left.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_left.json deleted file mode 100644 index 878f726c..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_left.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_left" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_left" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_left" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_left" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_left" } - }, - "4": { "model": "furenikusroads:text_left_1" }, - "5": { "model": "furenikusroads:text_left_1", "y": 90 }, - "6": { "model": "furenikusroads:text_left_1", "y": 180 }, - "7": { "model": "furenikusroads:text_left_1", "y": 270 }, - "8": { "model": "furenikusroads:text_left_2" }, - "9": { "model": "furenikusroads:text_left_2", "y": 90 }, - "10": { "model": "furenikusroads:text_left_2", "y": 180 }, - "11": { "model": "furenikusroads:text_left_2", "y": 270 }, - "12": { "model": "furenikusroads:text_left_3" }, - "13": { "model": "furenikusroads:text_left_3", "y": 90 }, - "14": { "model": "furenikusroads:text_left_3", "y": 180 }, - "15": { "model": "furenikusroads:text_left_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_merge_arrow.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_merge_arrow.json deleted file mode 100644 index 9b9ecc26..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_merge_arrow.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:icon_merge_arrow_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_merge_arrow" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "n1": { "model": "furenikusroads:icon_merge_arrow_1" }, - "e1": { "model": "furenikusroads:icon_merge_arrow_1", "y": 90 }, - "s1": { "model": "furenikusroads:icon_merge_arrow_1", "y": 180 }, - "w1": { "model": "furenikusroads:icon_merge_arrow_1", "y": 270 }, - "n2": { "model": "furenikusroads:icon_merge_arrow_2" }, - "e2": { "model": "furenikusroads:icon_merge_arrow_2", "y": 90 }, - "s2": { "model": "furenikusroads:icon_merge_arrow_2", "y": 180 }, - "w2": { "model": "furenikusroads:icon_merge_arrow_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_no.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_no.json deleted file mode 100644 index 15ff5e29..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_no.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_no" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_no" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_no" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_no" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_no" } - }, - "4": { "model": "furenikusroads:text_no_1" }, - "5": { "model": "furenikusroads:text_no_1", "y": 90 }, - "6": { "model": "furenikusroads:text_no_1", "y": 180 }, - "7": { "model": "furenikusroads:text_no_1", "y": 270 }, - "8": { "model": "furenikusroads:text_no_2" }, - "9": { "model": "furenikusroads:text_no_2", "y": 90 }, - "10": { "model": "furenikusroads:text_no_2", "y": 180 }, - "11": { "model": "furenikusroads:text_no_2", "y": 270 }, - "12": { "model": "furenikusroads:text_no_3" }, - "13": { "model": "furenikusroads:text_no_3", "y": 90 }, - "14": { "model": "furenikusroads:text_no_3", "y": 180 }, - "15": { "model": "furenikusroads:text_no_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_only.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_only.json deleted file mode 100644 index 33901b81..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_only.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_only" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_only" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_only" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_only" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_only" } - }, - "4": { "model": "furenikusroads:text_only_1" }, - "5": { "model": "furenikusroads:text_only_1", "y": 90 }, - "6": { "model": "furenikusroads:text_only_1", "y": 180 }, - "7": { "model": "furenikusroads:text_only_1", "y": 270 }, - "8": { "model": "furenikusroads:text_only_2" }, - "9": { "model": "furenikusroads:text_only_2", "y": 90 }, - "10": { "model": "furenikusroads:text_only_2", "y": 180 }, - "11": { "model": "furenikusroads:text_only_2", "y": 270 }, - "12": { "model": "furenikusroads:text_only_3" }, - "13": { "model": "furenikusroads:text_only_3", "y": 90 }, - "14": { "model": "furenikusroads:text_only_3", "y": 180 }, - "15": { "model": "furenikusroads:text_only_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_pedestrian.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_pedestrian.json deleted file mode 100644 index f79f67d0..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_pedestrian.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:icon_pedestrian_1" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:items/paint_icons/yellow_pedestrian" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "position_rotation": { - "n1": { "model": "furenikusroads:icon_pedestrian_1" }, - "e1": { "model": "furenikusroads:icon_pedestrian_1", "y": 90 }, - "s1": { "model": "furenikusroads:icon_pedestrian_1", "y": 180 }, - "w1": { "model": "furenikusroads:icon_pedestrian_1", "y": 270 }, - "n2": { "model": "furenikusroads:icon_pedestrian_2" }, - "e2": { "model": "furenikusroads:icon_pedestrian_2", "y": 90 }, - "s2": { "model": "furenikusroads:icon_pedestrian_2", "y": 180 }, - "w2": { "model": "furenikusroads:icon_pedestrian_2", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_right.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_right.json deleted file mode 100644 index f7dbd0f4..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_right.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_right" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_right" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_right" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_right" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_right" } - }, - "4": { "model": "furenikusroads:text_right_1" }, - "5": { "model": "furenikusroads:text_right_1", "y": 90 }, - "6": { "model": "furenikusroads:text_right_1", "y": 180 }, - "7": { "model": "furenikusroads:text_right_1", "y": 270 }, - "8": { "model": "furenikusroads:text_right_2" }, - "9": { "model": "furenikusroads:text_right_2", "y": 90 }, - "10": { "model": "furenikusroads:text_right_2", "y": 180 }, - "11": { "model": "furenikusroads:text_right_2", "y": 270 }, - "12": { "model": "furenikusroads:text_right_3" }, - "13": { "model": "furenikusroads:text_right_3", "y": 90 }, - "14": { "model": "furenikusroads:text_right_3", "y": 180 }, - "15": { "model": "furenikusroads:text_right_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_slow.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_slow.json deleted file mode 100644 index 5f64efc6..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_slow.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_slow" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_slow" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_slow" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_slow" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_slow" } - }, - "4": { "model": "furenikusroads:text_slow_1" }, - "5": { "model": "furenikusroads:text_slow_1", "y": 90 }, - "6": { "model": "furenikusroads:text_slow_1", "y": 180 }, - "7": { "model": "furenikusroads:text_slow_1", "y": 270 }, - "8": { "model": "furenikusroads:text_slow_2" }, - "9": { "model": "furenikusroads:text_slow_2", "y": 90 }, - "10": { "model": "furenikusroads:text_slow_2", "y": 180 }, - "11": { "model": "furenikusroads:text_slow_2", "y": 270 }, - "12": { "model": "furenikusroads:text_slow_3" }, - "13": { "model": "furenikusroads:text_slow_3", "y": 90 }, - "14": { "model": "furenikusroads:text_slow_3", "y": 180 }, - "15": { "model": "furenikusroads:text_slow_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_stop.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_stop.json deleted file mode 100644 index f1c48b9b..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_stop.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_stop" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_stop" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_stop" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_stop" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_stop" } - }, - "4": { "model": "furenikusroads:text_stop_1" }, - "5": { "model": "furenikusroads:text_stop_1", "y": 90 }, - "6": { "model": "furenikusroads:text_stop_1", "y": 180 }, - "7": { "model": "furenikusroads:text_stop_1", "y": 270 }, - "8": { "model": "furenikusroads:text_stop_2" }, - "9": { "model": "furenikusroads:text_stop_2", "y": 90 }, - "10": { "model": "furenikusroads:text_stop_2", "y": 180 }, - "11": { "model": "furenikusroads:text_stop_2", "y": 270 }, - "12": { "model": "furenikusroads:text_stop_3" }, - "13": { "model": "furenikusroads:text_stop_3", "y": 90 }, - "14": { "model": "furenikusroads:text_stop_3", "y": 180 }, - "15": { "model": "furenikusroads:text_stop_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_taxi.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_taxi.json deleted file mode 100644 index 4153f236..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_taxi.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_taxi" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_taxi" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_taxi" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_taxi" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_taxi" } - }, - "4": { "model": "furenikusroads:text_taxi_1" }, - "5": { "model": "furenikusroads:text_taxi_1", "y": 90 }, - "6": { "model": "furenikusroads:text_taxi_1", "y": 180 }, - "7": { "model": "furenikusroads:text_taxi_1", "y": 270 }, - "8": { "model": "furenikusroads:text_taxi_2" }, - "9": { "model": "furenikusroads:text_taxi_2", "y": 90 }, - "10": { "model": "furenikusroads:text_taxi_2", "y": 180 }, - "11": { "model": "furenikusroads:text_taxi_2", "y": 270 }, - "12": { "model": "furenikusroads:text_taxi_3" }, - "13": { "model": "furenikusroads:text_taxi_3", "y": 90 }, - "14": { "model": "furenikusroads:text_taxi_3", "y": 180 }, - "15": { "model": "furenikusroads:text_taxi_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_town.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_town.json deleted file mode 100644 index c6cfafeb..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_town.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_town" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_town" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_town" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_town" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_town" } - }, - "4": { "model": "furenikusroads:text_town_1" }, - "5": { "model": "furenikusroads:text_town_1", "y": 90 }, - "6": { "model": "furenikusroads:text_town_1", "y": 180 }, - "7": { "model": "furenikusroads:text_town_1", "y": 270 }, - "8": { "model": "furenikusroads:text_town_2" }, - "9": { "model": "furenikusroads:text_town_2", "y": 90 }, - "10": { "model": "furenikusroads:text_town_2", "y": 180 }, - "11": { "model": "furenikusroads:text_town_2", "y": 270 }, - "12": { "model": "furenikusroads:text_town_3" }, - "13": { "model": "furenikusroads:text_town_3", "y": 90 }, - "14": { "model": "furenikusroads:text_town_3", "y": 180 }, - "15": { "model": "furenikusroads:text_town_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/blockstates/yellow_turn.json b/src/main/resources/assets/furenikusroads/blockstates/yellow_turn.json deleted file mode 100644 index b3b9054e..00000000 --- a/src/main/resources/assets/furenikusroads/blockstates/yellow_turn.json +++ /dev/null @@ -1,65 +0,0 @@ -{ - "forge_marker": 1, - "defaults": { - "transform": "forge:default-block", - "textures": { - "0": "furenikusroads:blocks/paint_yellow", - "particle": "furenikusroads:blocks/paint_yellow" - }, - "model": "furenikusroads:tile_full" - }, - "variants": { - "inventory": [{ - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_turn" }, - "transform": { - "ground": { - "scale": [0.5, 0.5, 0.5], - "rotation": [90, 0, 180], - "translation": [0, 0, -0.2] - }, - "fixed": { - "rotation": [90, 0, 180], - "translation": [0, 0, -0.45] - }, - "gui": { - "translation": [0, 0, 0], - "rotation": [90, 0, 0] - } - } - }], - "meta": { - "0": { - "model": "furenikusroads:tile_full", - "textures": { "0": "furenikusroads:blocks/yellow_turn" } - }, - "1": { - "model": "furenikusroads:tile_full", - "y": 90, - "textures": { "0": "furenikusroads:blocks/yellow_turn" } - }, - "2": { - "model": "furenikusroads:tile_full", - "y": 180, - "textures": { "0": "furenikusroads:blocks/yellow_turn" } - }, - "3": { - "model": "furenikusroads:tile_full", - "y": 270, - "textures": { "0": "furenikusroads:blocks/yellow_turn" } - }, - "4": { "model": "furenikusroads:text_turn_1" }, - "5": { "model": "furenikusroads:text_turn_1", "y": 90 }, - "6": { "model": "furenikusroads:text_turn_1", "y": 180 }, - "7": { "model": "furenikusroads:text_turn_1", "y": 270 }, - "8": { "model": "furenikusroads:text_turn_2" }, - "9": { "model": "furenikusroads:text_turn_2", "y": 90 }, - "10": { "model": "furenikusroads:text_turn_2", "y": 180 }, - "11": { "model": "furenikusroads:text_turn_2", "y": 270 }, - "12": { "model": "furenikusroads:text_turn_3" }, - "13": { "model": "furenikusroads:text_turn_3", "y": 90 }, - "14": { "model": "furenikusroads:text_turn_3", "y": 180 }, - "15": { "model": "furenikusroads:text_turn_3", "y": 270 } - } - } -} \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/lang/en_gb.lang b/src/main/resources/assets/furenikusroads/lang/en_gb.lang deleted file mode 100644 index 848d842b..00000000 --- a/src/main/resources/assets/furenikusroads/lang/en_gb.lang +++ /dev/null @@ -1,6 +0,0 @@ -tile.furenikusroads.kerb_standard.0.name=Kerb (Unpainted) -tile.furenikusroads.kerb_standard.4.name=Kerb (White) -tile.furenikusroads.kerb_standard.8.name=Kerb (Yellow) -tile.furenikusroads.kerb_standard.12.name=Kerb (Red) - -item.tooltip.paint_gun.colour=Colour: \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/lang/en_us.lang b/src/main/resources/assets/furenikusroads/lang/en_us.lang deleted file mode 100644 index 31e93a16..00000000 --- a/src/main/resources/assets/furenikusroads/lang/en_us.lang +++ /dev/null @@ -1,716 +0,0 @@ -tile.furenikusroads.tar_fluid.name=Tar -tile.furenikusroads.paint_white_fluid.name=White Paint -tile.furenikusroads.paint_yellow_fluid.name=Yellow Paint -tile.furenikusroads.paint_red_fluid.name=Red Paint - - -tile.furenikusroads.road_block_standard.name=Standard Tarmac Road -tile.furenikusroads.road_block_concrete_1.name=Concrete Road -tile.furenikusroads.road_block_concrete_2.name=Concrete Road -tile.furenikusroads.road_block_light.name=Light Tarmac Road -tile.furenikusroads.road_block_dark.name=Dark Tarmac Road -tile.furenikusroads.road_block_pale.name=Pale Tarmac Road -tile.furenikusroads.road_block_red.name=Red Tarmac Road -tile.furenikusroads.road_block_blue.name=Blue Tarmac Road -tile.furenikusroads.road_block_white.name=White Tarmac Road -tile.furenikusroads.road_block_yellow.name=Yellow Tarmac Road -tile.furenikusroads.road_block_green.name=Green Tarmac Road -tile.furenikusroads.road_block_fine.name=Fine Tarmac Road -tile.furenikusroads.road_block_muddy.name=Mud Road -tile.furenikusroads.road_block_muddy_dried.name=Dried Mud Road - -tile.furenikusroads.road_block_stone.name=Stone Road -tile.furenikusroads.road_block_grass.name=Grass Road -tile.furenikusroads.road_block_dirt.name=Dirt Road -tile.furenikusroads.road_block_sand.name=Sand Road -tile.furenikusroads.road_block_gravel.name=Gravel Road - -tile.furenikusroads.sidewalk.name=Sidewalk -tile.furenikusroads.sidewalk_clean.name=Clean Sidewalk -tile.furenikusroads.sidewalk_dark.name=Dark Sidewalk -tile.furenikusroads.sidewalk_tan.name=Tan Sidewalk - -tile.furenikusroads.paint_filler.name=Paint Filler -tile.furenikusroads.tar_distiller.name=Tar Distiller -tile.furenikusroads.road_factory.name=Road Factory -tile.furenikusroads.tarmac_cutter.name=Tarmac Cutter -tile.furenikusroads.crusher.name=Crusher -tile.furenikusroads.paint_oven.name=Paint Oven -tile.furenikusroads.compactor.name=Compactor -tile.furenikusroads.fabricator.name=Fabricator -tile.furenikusroads.paint_filler_hopper.name=Paint Filler Hopper - -tile.furenikusroads.paint_filler_electric.name=Electric Paint Filler -tile.furenikusroads.tar_distiller_electric.name=Electric Tar Distiller -tile.furenikusroads.road_factory_electric.name=Electric Road Factory -tile.furenikusroads.tarmac_cutter_electric.name=Electric Tarmac Cutter -tile.furenikusroads.crusher_electric.name=Electric Crusher -tile.furenikusroads.paint_oven_electric.name=Electric Paint Oven -tile.furenikusroads.compactor_electric.name=Electric Compactor -tile.furenikusroads.fabricator_electric.name=Electric Fabricator - -tile.furenikusroads.kerb_standard.0.name=Curb (Unpainted) -tile.furenikusroads.kerb_standard.4.name=Curb (White) -tile.furenikusroads.kerb_standard.8.name=Curb (Yellow) -tile.furenikusroads.kerb_standard.12.name=Curb (Red) - -tile.furenikusroads.tactile_crossing_bumps.name=Tactile Sidewalk -tile.furenikusroads.manhole_cover_round.name=Manhole Cover -tile.furenikusroads.manhole_cover_square.name=Manhole Cover - -tile.furenikusroads.street_light_1.name=Street Light -tile.furenikusroads.street_light_2.name=Street Light (Long) -tile.furenikusroads.street_light_3.name=Street Light -tile.furenikusroads.street_light_4.name=Street Light (Long) -tile.furenikusroads.street_light_5.name=Street Light (Slant) -tile.furenikusroads.street_light_6.name=Street Light (Slant) - -tile.furenikusroads.post_large_vertical.name=Post (Large) -tile.furenikusroads.post_medium_vertical.name=Post (Medium) -tile.furenikusroads.post_small_vertical.name=Post (Small) -tile.furenikusroads.post_large_vertical_2.name=Post (Large) -tile.furenikusroads.post_medium_vertical_2.name=Post (Medium) -tile.furenikusroads.post_small_vertical_2.name=Post (Small) -tile.furenikusroads.post_large_horizontal.name=Horizontal Post (Large) -tile.furenikusroads.post_medium_horizontal.name=Horizontal Post (Medium) -tile.furenikusroads.post_small_horizontal.name=Horizontal Post (Small) - -tile.furenikusroads.barrier_standard_mid.name=Road Barrier Standard (Mid) -tile.furenikusroads.barrier_standard_edge.name=Road Barrier Standard (Edge) -tile.furenikusroads.barrier_standard_edge_double.name=Road Barrier Standard (Double Edge) -tile.furenikusroads.barrier_end.0.name=Road Barrier Standard End (Mid) - -tile.furenikusroads.barrier_tall_mid.name=Road Barrier Tall (Mid) -tile.furenikusroads.barrier_tall_edge.name=Road Barrier Tall (Edge) -tile.furenikusroads.barrier_tall_edge_double.name=Road Barrier Tall (Double Edge) - -tile.furenikusroads.barrier_concrete_1_mid.name=Concrete Barrier (Mid) -tile.furenikusroads.barrier_concrete_2_mid.name=Concrete Barrier (Mid) -tile.furenikusroads.barrier_bars_mid.name=Bars (Mid) -tile.furenikusroads.barrier_bars_mid_2.name=Bars (Mid) -tile.furenikusroads.barrier_bars_mid_3.name=Bars (Mid) -tile.furenikusroads.barrier_wall_mid_concrete_1.name=Concrete Wall (Mid) -tile.furenikusroads.barrier_wall_mid_concrete_2.name=Concrete Wall (Mid) -tile.furenikusroads.barrier_bars_mid_concrete_1.name=Bars with Concrete Post (Mid) -tile.furenikusroads.barrier_bars_mid_concrete_2.name=Bars with Concrete Post (Mid) -tile.furenikusroads.barrier_wall_pole_mid_concrete_1.name=Concrete Wall with Pole (Mid) -tile.furenikusroads.barrier_wall_pole_mid_concrete_2.name=Concrete Wall with Pole (Mid) -tile.furenikusroads.barrier_low_mid.name=Barrier Low (Mid) - -tile.furenikusroads.barrier_wall_edge_concrete_1.name=Concrete Wall (Edge) -tile.furenikusroads.barrier_wall_edge_concrete_2.name=Concrete Wall (Edge) -tile.furenikusroads.barrier_bars_edge.name=Bars (Edge) -tile.furenikusroads.barrier_bars_edge_2.name=Bars (Edge) -tile.furenikusroads.barrier_bars_edge_3.name=Bars (Edge) -tile.furenikusroads.barrier_concrete_edge_1.name=Concrete Barrier (Edge) -tile.furenikusroads.barrier_concrete_edge_2.name=Concrete Barrier (Edge) -tile.furenikusroads.barrier_bars_edge_concrete_1.name=Bars with Concrete Post (Edge) -tile.furenikusroads.barrier_bars_edge_concrete_2.name=Bars with Concrete Post (Edge) -tile.furenikusroads.barrier_wall_pole_edge_concrete_1.name=Concrete Wall with Pole (Edge) -tile.furenikusroads.barrier_wall_pole_edge_concrete_2.name=Concrete Wall with Pole (Edge) -tile.furenikusroads.barrier_low_edge.name=Barrier Low (Edge) - -tile.furenikusroads.barrier_bars_edge_double.name=Bars (Double Edge) -tile.furenikusroads.barrier_bars_edge_double_2.name=Bars (Double Edge) -tile.furenikusroads.barrier_bars_edge_double_3.name=Bars (Double Edge) -tile.furenikusroads.barrier_wall_edge_concrete_1_double.name=Concrete Wall (Double Edge) -tile.furenikusroads.barrier_wall_edge_concrete_2_double.name=Concrete Wall (Double Edge) -tile.furenikusroads.barrier_bars_edge_concrete_1_double.name=Bars with Concrete Post (Double Edge) -tile.furenikusroads.barrier_bars_edge_concrete_2_double.name=Bars with Concrete Post (Double Edge) -tile.furenikusroads.barrier_wall_pole_edge_concrete_1_double.name=Concrete Wall with Pole (Double Edge) -tile.furenikusroads.barrier_wall_pole_edge_concrete_2_double.name=Concrete Wall with Pole (Double Edge) - - - - - - -tile.furenikusroads.drain_cover_1.name=Drain Cover -tile.furenikusroads.drain_cover_2.name=Drain Cover - -tile.furenikusroads.bollard_1.0.name=Thick Traffic Bollard (Left-Side Drive) -tile.furenikusroads.bollard_1.1.name=Thick Traffic Bollard (Left-Side Drive) -tile.furenikusroads.bollard_1.2.name=Thick Traffic Bollard (Right-Side Drive) -tile.furenikusroads.bollard_1.3.name=Thick Traffic Bollard (Right-Side Drive) -tile.furenikusroads.bollard_1.4.name=Thin Traffic Bollard (Left-Side Drive) -tile.furenikusroads.bollard_1.5.name=Thin Traffic Bollard (Left-Side Drive) -tile.furenikusroads.bollard_1.6.name=Thin Traffic Bollard (Right-Side Drive) -tile.furenikusroads.bollard_1.7.name=Thin Traffic Bollard (Right-Side Drive) -tile.furenikusroads.bollard_1.8.name=unimplemented -tile.furenikusroads.bollard_1.9.name=unimplemented -tile.furenikusroads.bollard_1.10.name=unimplemented -tile.furenikusroads.bollard_1.11.name=unimplemented -tile.furenikusroads.bollard_1.12.name=unimplemented -tile.furenikusroads.bollard_1.13.name=unimplemented -tile.furenikusroads.bollard_1.14.name=unimplemented -tile.furenikusroads.bollard_1.15.name=unimplemented - -item.diamond_nugget.name=Diamond Nugget - -tile.furenikusroads.bollard_2.0.name=Concrete Bollard 1 -tile.furenikusroads.bollard_2.1.name=Concrete Bollard 2 -tile.furenikusroads.bollard_2.2.name=Metal Bollard -tile.furenikusroads.bollard_2.3.name=Metal Bollard (Striped) -tile.furenikusroads.bollard_2.4.name=Metal Bollard (Rings) -tile.furenikusroads.bollard_2.5.name=Metal Bollard (Yellow) -tile.furenikusroads.bollard_2.6.name=Thin Metal Bollard -tile.furenikusroads.bollard_2.7.name=Thin Metal Bollard (Striped) -tile.furenikusroads.bollard_2.8.name=Thin Metal Bollard (Rings) -tile.furenikusroads.bollard_2.9.name=Thin Metal Bollard (Yellow) -tile.furenikusroads.bollard_2.10.name=Bollard (Topped) -tile.furenikusroads.bollard_2.11.name=Bollard (Topped, Ring) -tile.furenikusroads.bollard_2.12.name=Metal Bollard (Light) -tile.furenikusroads.bollard_2.13.name=Metal Bollard (Black, Light) -tile.furenikusroads.bollard_2.14.name=Portable Bollard (Orange) -tile.furenikusroads.bollard_2.15.name=Portable Bollard (Yellow) - -tile.furenikusroads.bollard_3.0.name=Metal Retractable Bollard -tile.furenikusroads.bollard_3.1.name=Metal Retractable Bollard -tile.furenikusroads.bollard_3.2.name=Metal Retractable Bollard (Black) -tile.furenikusroads.bollard_3.3.name=Metal Retractable Bollard (Black) -tile.furenikusroads.bollard_3.4.name=Tall Metal Retractable Bollard -tile.furenikusroads.bollard_3.5.name=Tall Metal Retractable Bollard -tile.furenikusroads.bollard_3.6.name=Tall Metal Retractable Bollard (Black) -tile.furenikusroads.bollard_3.7.name=Tall Metal Retractable Bollard (Black) -tile.furenikusroads.bollard_3.8.name=Metal Retractable Bollard -tile.furenikusroads.bollard_3.9.name=Metal Retractable Bollard -tile.furenikusroads.bollard_3.10.name=Metal Retractable Bollard (Rings) -tile.furenikusroads.bollard_3.11.name=Metal Retractable Bollard (Rings) -tile.furenikusroads.bollard_3.12.name=Thin Metal Retractable Bollard -tile.furenikusroads.bollard_3.13.name=Thin Metal Retractable Bollard -tile.furenikusroads.bollard_3.14.name=Thin Metal Retractable Bollard (Rings) -tile.furenikusroads.bollard_3.15.name=Thin Metal Retractable Bollard (Rings) - -tile.furenikusroads.bollard_folding_smooth_metal.0.name=Metal Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.1.name=Metal Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.2.name=Metal Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.3.name=Metal Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.4.name=Metal Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.5.name=Metal Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.6.name=Metal Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.7.name=Metal Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.8.name=Metal Wide Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.9.name=Metal Wide Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.10.name=Metal Wide Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.11.name=Metal Wide Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.12.name=Metal Wide Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.13.name=Metal Wide Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.14.name=Metal Wide Folding Bollard -tile.furenikusroads.bollard_folding_smooth_metal.15.name=Metal Wide Folding Bollard - -tile.furenikusroads.bollard_folding_black.0.name=Black Folding Bollard -tile.furenikusroads.bollard_folding_black.1.name=Black Folding Bollard -tile.furenikusroads.bollard_folding_black.2.name=Black Folding Bollard -tile.furenikusroads.bollard_folding_black.3.name=Black Folding Bollard -tile.furenikusroads.bollard_folding_black.4.name=Black Folding Bollard -tile.furenikusroads.bollard_folding_black.5.name=Black Folding Bollard -tile.furenikusroads.bollard_folding_black.6.name=Black Folding Bollard -tile.furenikusroads.bollard_folding_black.7.name=Black Folding Bollard -tile.furenikusroads.bollard_folding_black.8.name=Black Wide Folding Bollard -tile.furenikusroads.bollard_folding_black.9.name=Black Wide Folding Bollard -tile.furenikusroads.bollard_folding_black.10.name=Black Wide Folding Bollard -tile.furenikusroads.bollard_folding_black.11.name=Black Wide Folding Bollard -tile.furenikusroads.bollard_folding_black.12.name=Black Wide Folding Bollard -tile.furenikusroads.bollard_folding_black.13.name=Black Wide Folding Bollard -tile.furenikusroads.bollard_folding_black.14.name=Black Wide Folding Bollard -tile.furenikusroads.bollard_folding_black.15.name=Black Wide Folding Bollard - -//Actually YELLOW bollards. Just a quirk of my internal naming means we only accept white as a colour in internal names. -tile.furenikusroads.bollard_folding_white.0.name=Yellow Folding Bollard -tile.furenikusroads.bollard_folding_white.1.name=Yellow Folding Bollard -tile.furenikusroads.bollard_folding_white.2.name=Yellow Folding Bollard -tile.furenikusroads.bollard_folding_white.3.name=Yellow Folding Bollard -tile.furenikusroads.bollard_folding_white.4.name=Yellow Folding Bollard -tile.furenikusroads.bollard_folding_white.5.name=Yellow Folding Bollard -tile.furenikusroads.bollard_folding_white.6.name=Yellow Folding Bollard -tile.furenikusroads.bollard_folding_white.7.name=Yellow Folding Bollard -tile.furenikusroads.bollard_folding_white.8.name=Yellow Wide Folding Bollard -tile.furenikusroads.bollard_folding_white.9.name=Yellow Wide Folding Bollard -tile.furenikusroads.bollard_folding_white.10.name=Yellow Wide Folding Bollard -tile.furenikusroads.bollard_folding_white.11.name=Yellow Wide Folding Bollard -tile.furenikusroads.bollard_folding_white.12.name=Yellow Wide Folding Bollard -tile.furenikusroads.bollard_folding_white.13.name=Yellow Wide Folding Bollard -tile.furenikusroads.bollard_folding_white.14.name=Yellow Wide Folding Bollard -tile.furenikusroads.bollard_folding_white.15.name=Yellow Wide Folding Bollard - -tile.furenikusroads.wheel_stop.0.name=Concrete Wheel Stop -tile.furenikusroads.wheel_stop.1.name=Concrete Wheel Stop -tile.furenikusroads.wheel_stop.2.name=Concrete Wheel Stop -tile.furenikusroads.wheel_stop.3.name=Concrete Wheel Stop -tile.furenikusroads.wheel_stop.4.name=Concrete Wheel Stop -tile.furenikusroads.wheel_stop.5.name=Concrete Wheel Stop -tile.furenikusroads.wheel_stop.6.name=Concrete Wheel Stop -tile.furenikusroads.wheel_stop.7.name=Concrete Wheel Stop -tile.furenikusroads.wheel_stop.8.name=Yellow Wheel Stop -tile.furenikusroads.wheel_stop.9.name=Yellow Wheel Stop -tile.furenikusroads.wheel_stop.10.name=Yellow Wheel Stop -tile.furenikusroads.wheel_stop.11.name=Yellow Wheel Stop -tile.furenikusroads.wheel_stop.12.name=Black Wheel Stop -tile.furenikusroads.wheel_stop.13.name=Black Wheel Stop -tile.furenikusroads.wheel_stop.14.name=Black Wheel Stop -tile.furenikusroads.wheel_stop.15.name=Black Wheel Stop - -tile.furenikusroads.speed_bump.0.name=Black Speed Bump -tile.furenikusroads.speed_bump.1.name=Black Speed Bump -tile.furenikusroads.speed_bump.2.name=Yellow Speed Bump -tile.furenikusroads.speed_bump.3.name=Yellow Speed Bump -tile.furenikusroads.speed_bump.4.name=Concrete Speed Bump -tile.furenikusroads.speed_bump.5.name=Concrete Speed Bump -tile.furenikusroads.speed_bump.6.name=Concrete Speed Bump -tile.furenikusroads.speed_bump.7.name=Concrete Speed Bump -tile.furenikusroads.speed_bump.8.name=Standard Tarmac Speed Bump -tile.furenikusroads.speed_bump.9.name=Standard Tarmac Speed Bump -tile.furenikusroads.speed_bump.10.name=White Tarmac Speed Bump -tile.furenikusroads.speed_bump.11.name=White Tarmac Speed Bump -tile.furenikusroads.speed_bump.12.name=Yellow Tarmac Speed Bump -tile.furenikusroads.speed_bump.13.name=Yellow Tarmac Speed Bump -tile.furenikusroads.speed_bump.14.name=Red Tarmac Speed Bump -tile.furenikusroads.speed_bump.15.name=Red Tarmac Speed Bump - -tile.furenikusroads.cats_eye_white.name=White Reflector -tile.furenikusroads.cats_eye_yellow.name=Yellow Reflector -tile.furenikusroads.cats_eye_red.name=Red Reflector -tile.furenikusroads.cats_eye_green.name=Green Reflector -tile.furenikusroads.cats_eye_blue.name=Blue Reflector - -tile.furenikusroads.cats_eye_red_green.name=Red/Green Reflector -tile.furenikusroads.cats_eye_white_red.name=White/Red Reflector -tile.furenikusroads.cats_eye_white_yellow.name=White/Yellow Reflector -tile.furenikusroads.cats_eye_white_green.name=White/Green Reflector -tile.furenikusroads.cats_eye_yellow_red.name=Yellow/Red Reflector - -tile.furenikusroads.cats_eye_white_double.name=White Reflectors -tile.furenikusroads.cats_eye_yellow_double.name=Yellow Reflectors -tile.furenikusroads.cats_eye_red_double.name=Red Reflectors -tile.furenikusroads.cats_eye_green_double.name=Green Reflectors -tile.furenikusroads.cats_eye_blue_double.name=Blue Reflectors - -tile.furenikusroads.cats_eye_red_green_double.name=Red/Green Reflectors -tile.furenikusroads.cats_eye_white_red_double.name=White/Red Reflectors -tile.furenikusroads.cats_eye_white_yellow_double.name=White/Yellow Reflectors -tile.furenikusroads.cats_eye_white_green_double.name=White/Green Reflectors -tile.furenikusroads.cats_eye_yellow_red_double.name=Yellow/Red Reflectors - -tile.furenikusroads.street_block_a.0.name=Sidewalk (Brick) -tile.furenikusroads.street_block_a.1.name=Sidewalk (Crossed Brick) -tile.furenikusroads.street_block_a.2.name=Sidewalk (Small Tiles) -tile.furenikusroads.street_block_a.3.name=Sidewalk (Medium Tile) -tile.furenikusroads.street_block_a.4.name=Sidewalk (Large Tile) -tile.furenikusroads.street_block_a.5.name=Sidewalk (Large Brick) -tile.furenikusroads.street_block_a.6.name=Sidewalk (Horizontal Slab) -tile.furenikusroads.street_block_a.7.name=Sidewalk (Vertical Slab) -tile.furenikusroads.street_block_a.8.name=Tan Sidewalk (Brick) -tile.furenikusroads.street_block_a.9.name=Tan Sidewalk (Crossed Brick) -tile.furenikusroads.street_block_a.10.name=Tan Sidewalk (Small Tiles) -tile.furenikusroads.street_block_a.11.name=Tan Sidewalk (Medium Tile) -tile.furenikusroads.street_block_a.12.name=Tan Sidewalk (Large Tile) -tile.furenikusroads.street_block_a.13.name=Tan Sidewalk (Large Brick) -tile.furenikusroads.street_block_a.14.name=Tan Sidewalk (Horizontal Slab) -tile.furenikusroads.street_block_a.15.name=Tan Sidewalk (Vertical Slab) - -tile.furenikusroads.street_block_b.0.name=Clean Sidewalk (Brick) -tile.furenikusroads.street_block_b.1.name=Clean Sidewalk (Crossed Brick) -tile.furenikusroads.street_block_b.2.name=Clean Sidewalk (Small Tiles) -tile.furenikusroads.street_block_b.3.name=Clean Sidewalk (Medium Tile) -tile.furenikusroads.street_block_b.4.name=Clean Sidewalk (Large Tile) -tile.furenikusroads.street_block_b.5.name=Clean Sidewalk (Large Brick) -tile.furenikusroads.street_block_b.6.name=Clean Sidewalk (Horizontal Slab) -tile.furenikusroads.street_block_b.7.name=Clean Sidewalk (Vertical Slab) -tile.furenikusroads.street_block_b.8.name=Dark Sidewalk (Brick) -tile.furenikusroads.street_block_b.9.name=Dark Sidewalk (Crossed Brick) -tile.furenikusroads.street_block_b.10.name=Dark Sidewalk (Small Tiles) -tile.furenikusroads.street_block_b.11.name=Dark Sidewalk (Medium Tile) -tile.furenikusroads.street_block_b.12.name=Dark Sidewalk (Large Tile) -tile.furenikusroads.street_block_b.13.name=Dark Sidewalk (Large Brick) -tile.furenikusroads.street_block_b.14.name=Dark Sidewalk (Horizontal Slab) -tile.furenikusroads.street_block_b.15.name=Dark Sidewalk (Vertical Slab) - -tile.furenikusroads.generic_blocks.0.name=Crushed Rock -tile.furenikusroads.generic_blocks.1.name=Clinker -tile.furenikusroads.generic_blocks.2.name=Cement -tile.furenikusroads.generic_blocks.3.name=Limestone - -tile.furenikusroads.line_white_straight_full.0.name=Straight Line -tile.furenikusroads.line_white_straight_full.2.name=Straight Line (Connecting) -tile.furenikusroads.line_white_straight_thick.0.name=Thick Straight Line -tile.furenikusroads.line_white_straight_thick.2.name=Thick Straight Line (Connecting) -tile.furenikusroads.line_white_straight_double.0.name=Straight Double Line -tile.furenikusroads.line_white_straight_double.2.name=Straight Double Line (Connecting) -tile.furenikusroads.line_white_straight_double_thick.0.name=Thick Straight Double Line -tile.furenikusroads.line_white_straight_double_thick.2.name=Thick Straight Double Line (Connecting) -tile.furenikusroads.line_white_side_double.0.name=Double Side Line (Connecting) -tile.furenikusroads.line_white_side_double.6.name=Double Side Line -tile.furenikusroads.line_white_side_double_thick.0.name=Thick Double Side Line (Connecting) -tile.furenikusroads.line_white_side_double_thick.6.name=Thick Double Side Line -tile.furenikusroads.line_white_side_single.0.name=Side Line (Connecting) -tile.furenikusroads.line_white_side_single.6.name=Side Line -tile.furenikusroads.line_white_side_single_thick.0.name=Thick Side Line (Connecting) -tile.furenikusroads.line_white_side_single_thick.6.name=Thick Side Line -tile.furenikusroads.line_white_far_side.0.name=Edge Side Line (Connecting) -tile.furenikusroads.line_white_far_side.6.name=Edge Side Line -tile.furenikusroads.line_white_far_side_thick.0.name=Thick Edge Side Line (Connecting) -tile.furenikusroads.line_white_far_side_thick.6.name=Thick Edge Side Line -tile.furenikusroads.line_white_middle_half_double.0.name=Straight Double Line (Half) -tile.furenikusroads.line_white_middle_dash_double.0.name=Straight Double Line (Dashed) -tile.furenikusroads.line_white_middle_short.0.name=Straight Short Line -tile.furenikusroads.line_white_filter_lane.0.name=Thick Straight Short Line -tile.furenikusroads.line_white_side_short.0.name=Side Short Line -tile.furenikusroads.line_white_thin_crossing.0.name=Crossing (Thin) - -tile.furenikusroads.white_wheelchair_icon.0.name=Handicapped Icon -tile.furenikusroads.white_chevron.0.name=Chevron Icon -tile.furenikusroads.white_pedestrian.0.name=Pedestrian Icon -tile.furenikusroads.white_merge_arrow.0.name=Merge Arrow Icon -tile.furenikusroads.white_give_way.0.name=Give Way Icon -tile.furenikusroads.white_arrow_line.0.name=Arrow (Line) -tile.furenikusroads.white_arrow.0.name=Arrow (Forward) -tile.furenikusroads.white_arrow.4.name=Arrow (Side) -tile.furenikusroads.white_arrow_diagonal.4.name=Arrow (Diagonal Line) -tile.furenikusroads.white_arrow_diagonal.0.name=Arrow (Diagonal) -tile.furenikusroads.white_crossing_paint.0.name=Crosswalk -tile.furenikusroads.line_white_thin_crossing.name=Crosswalk (Thin) -tile.furenikusroads.line_white_crossing_diagonal.0.name=Crossing Line -tile.furenikusroads.white_junction_a.0.name=Junction Enter Right -tile.furenikusroads.white_junction_a.4.name=Junction Exit Left -tile.furenikusroads.white_junction_a.8.name=Junction Enter Right Mid -tile.furenikusroads.white_junction_b.0.name=Junction Enter Left -tile.furenikusroads.white_junction_b.4.name=Junction Exit Right -tile.furenikusroads.white_junction_b.8.name=Junction Enter Left Mid -tile.furenikusroads.hatch_box_white.0.name=Hatching Box - -tile.furenikusroads.paint_letter_white_ab.0.name=Letter A -tile.furenikusroads.paint_letter_white_ab.8.name=Letter B -tile.furenikusroads.paint_letter_white_cd.0.name=Letter C -tile.furenikusroads.paint_letter_white_cd.8.name=Letter D -tile.furenikusroads.paint_letter_white_ef.0.name=Letter E -tile.furenikusroads.paint_letter_white_ef.8.name=Letter F -tile.furenikusroads.paint_letter_white_gh.0.name=Letter G -tile.furenikusroads.paint_letter_white_gh.8.name=Letter H -tile.furenikusroads.paint_letter_white_ij.0.name=Letter I -tile.furenikusroads.paint_letter_white_ij.8.name=Letter J -tile.furenikusroads.paint_letter_white_kl.0.name=Letter K -tile.furenikusroads.paint_letter_white_kl.8.name=Letter L -tile.furenikusroads.paint_letter_white_mn.0.name=Letter M -tile.furenikusroads.paint_letter_white_mn.8.name=Letter N -tile.furenikusroads.paint_letter_white_op.0.name=Letter O -tile.furenikusroads.paint_letter_white_op.8.name=Letter P -tile.furenikusroads.paint_letter_white_qr.0.name=Letter Q -tile.furenikusroads.paint_letter_white_qr.8.name=Letter R -tile.furenikusroads.paint_letter_white_st.0.name=Letter S -tile.furenikusroads.paint_letter_white_st.8.name=Letter T -tile.furenikusroads.paint_letter_white_uv.0.name=Letter U -tile.furenikusroads.paint_letter_white_uv.8.name=Letter V -tile.furenikusroads.paint_letter_white_wx.0.name=Letter W -tile.furenikusroads.paint_letter_white_wx.8.name=Letter X -tile.furenikusroads.paint_letter_white_yz.0.name=Letter Y -tile.furenikusroads.paint_letter_white_yz.8.name=Letter Z -tile.furenikusroads.paint_letter_white_01.0.name=Number 0 -tile.furenikusroads.paint_letter_white_01.8.name=Number 1 -tile.furenikusroads.paint_letter_white_23.0.name=Number 2 -tile.furenikusroads.paint_letter_white_23.8.name=Number 3 -tile.furenikusroads.paint_letter_white_45.0.name=Number 4 -tile.furenikusroads.paint_letter_white_45.8.name=Number 5 -tile.furenikusroads.paint_letter_white_67.0.name=Number 6 -tile.furenikusroads.paint_letter_white_67.8.name=Number 7 -tile.furenikusroads.paint_letter_white_89.0.name=Number 8 -tile.furenikusroads.paint_letter_white_89.8.name=Number 9 -tile.furenikusroads.paint_letter_white_punct_question_exclamation.0.name=? -tile.furenikusroads.paint_letter_white_punct_question_exclamation.8.name=! -tile.furenikusroads.paint_letter_white_punct_hash_slash.0.name=# -tile.furenikusroads.paint_letter_white_punct_hash_slash.8.name=/ - -tile.furenikusroads.white_slow.0.name=Prefab Text: Slow (Small) -tile.furenikusroads.white_slow.4.name=Prefab Text: Slow (Large) -tile.furenikusroads.white_stop.0.name=Prefab Text: Stop (Small) -tile.furenikusroads.white_stop.4.name=Prefab Text: Stop (Large) -tile.furenikusroads.white_bike.0.name=Prefab Text: Bike (Small) -tile.furenikusroads.white_bike.4.name=Prefab Text: Bike (Large) -tile.furenikusroads.white_bus.0.name=Prefab Text: Bus (Small) -tile.furenikusroads.white_bus.4.name=Prefab Text: Bus (Large) -tile.furenikusroads.white_taxi.0.name=Prefab Text: Taxi (Small) -tile.furenikusroads.white_taxi.4.name=Prefab Text: Taxi (Large) -tile.furenikusroads.white_lane.0.name=Prefab Text: Lane (Small) -tile.furenikusroads.white_lane.4.name=Prefab Text: Lane (Large) -tile.furenikusroads.white_keep.0.name=Prefab Text: Keep (Small) -tile.furenikusroads.white_keep.4.name=Prefab Text: Keep (Large) -tile.furenikusroads.white_clear.0.name=Prefab Text: Clear (Small) -tile.furenikusroads.white_clear.4.name=Prefab Text: Clear (Large) -tile.furenikusroads.white_turn.0.name=Prefab Text: Turn (Small) -tile.furenikusroads.white_turn.4.name=Prefab Text: Turn (Large) -tile.furenikusroads.white_left.0.name=Prefab Text: Left (Small) -tile.furenikusroads.white_left.4.name=Prefab Text: Left (Large) -tile.furenikusroads.white_right.0.name=Prefab Text: Right (Small) -tile.furenikusroads.white_right.4.name=Prefab Text: Right (Large) -tile.furenikusroads.white_only.0.name=Prefab Text: Only (Small) -tile.furenikusroads.white_only.4.name=Prefab Text: Only (Large) -tile.furenikusroads.white_no.0.name=Prefab Text: No (Small) -tile.furenikusroads.white_no.4.name=Prefab Text: No (Large) -tile.furenikusroads.white_entry.0.name=Prefab Text: Entry (Small) -tile.furenikusroads.white_entry.4.name=Prefab Text: Entry (Large) -tile.furenikusroads.white_town.0.name=Prefab Text: Town (Small) -tile.furenikusroads.white_town.4.name=Prefab Text: Town (Large) -tile.furenikusroads.white_city.0.name=Prefab Text: City (Small) -tile.furenikusroads.white_city.4.name=Prefab Text: City (Large) -tile.furenikusroads.white_ctre.0.name=Prefab Text: C'tre (Small) -tile.furenikusroads.white_ctre.4.name=Prefab Text: C'tre (Large) -tile.furenikusroads.white_bike_icon.0.name=Bike Icon (Small) -tile.furenikusroads.white_bike_icon.4.name=Bike Icon (Large) - -tile.furenikusroads.white_chevron_left_a.0.name=Chevron (Left) -tile.furenikusroads.white_chevron_mid.0.name=Chevron (Mid) -tile.furenikusroads.white_chevron_mid.4.name=Chevron (Mid) -tile.furenikusroads.white_chevron_right_a.0.name=Chevron (Right) -tile.furenikusroads.white_chevron_left_a_thin.0.name=Chevron (Left, Thin) -tile.furenikusroads.white_chevron_mid.8.name=Chevron (Mid, Thin) -tile.furenikusroads.white_chevron_mid.12.name=Chevron (Mid, Thin) -tile.furenikusroads.white_chevron_right_a_thin.0.name=Chevron (Right, Thin) -tile.furenikusroads.white_junction_filter_left.0.name=Filter Lane (Left) -tile.furenikusroads.white_junction_filter_right.0.name=Filter Lane (Right) -tile.furenikusroads.white_junction_filter_left_thin.0.name=Filter Lane (Left, Thin) -tile.furenikusroads.white_junction_filter_right_thin.0.name=Filter Lane (Right, Thin) -tile.furenikusroads.white_junction_filter_left_empty.0.name=Filter Lane (Left, Hidden) -tile.furenikusroads.white_junction_filter_right_empty.0.name=Filter Lane (Right, Hidden) -tile.furenikusroads.white_chevron_mid_right.0.name=Central Divider (Half, Right) -tile.furenikusroads.white_chevron_mid_right.4.name=Central Divider (Half, Right) -tile.furenikusroads.white_chevron_mid_left.0.name=Central Divider (Half, Left) -tile.furenikusroads.white_chevron_mid_left.4.name=Central Divider (Half, Left) -tile.furenikusroads.white_chevron_mid_right.8.name=Central Divider (Half, Right, Thin) -tile.furenikusroads.white_chevron_mid_right.12.name=Central Divider (Half, Right, Thin) -tile.furenikusroads.white_chevron_mid_left.8.name=Central Divider (Half, Left, Thin) -tile.furenikusroads.white_chevron_mid_left.12.name=Central Divider (Half, Left, Thin) -tile.furenikusroads.white_chevron_side_line.0.name=Central Divider (Full) -tile.furenikusroads.white_junction_fork_mid.0.name=Junction Fork -tile.furenikusroads.white_junction_fork_mid_thin.0.name=Junction Fork (Thin) -tile.furenikusroads.white_junction_fork_chevron_mid_thin.0.name=Junction Fork (Chevron, Thin) -tile.furenikusroads.white_junction_fork_chevron_mid.0.name=Junction Fork (Chevron) -tile.furenikusroads.white_junction_side_line_connection.0.name=Filter Lane Thin->Thick L Back Continuous -tile.furenikusroads.white_junction_side_line_connection.4.name=Filter Lane Thin->Thick L Back -tile.furenikusroads.white_junction_side_line_connection.8.name=Filter Lane Thin->Thick L Forward Continuous -tile.furenikusroads.white_junction_side_line_connection.12.name=Filter Lane Thin->Thick L Forward -tile.furenikusroads.white_junction_side_line_connection_thin.0.name=Filter Lane Thin->Thin L Back Continuous -tile.furenikusroads.white_junction_side_line_connection_thin.4.name=Filter Lane Thin->Thin L Back -tile.furenikusroads.white_junction_side_line_connection_thin.8.name=Filter Lane Thin->Thin L Forward Continuous -tile.furenikusroads.white_junction_side_line_connection_thin.12.name=Filter Lane Thin->Thin L Forward -tile.furenikusroads.white_junction_side_line_connection_thick_thick.0.name=Filter Lane Thick->Thick L Back Continuous -tile.furenikusroads.white_junction_side_line_connection_thick_thick.4.name=Filter Lane Thick->Thick L Back -tile.furenikusroads.white_junction_side_line_connection_thick_thick.8.name=Filter Lane Thick->Thick L Forward Continuous -tile.furenikusroads.white_junction_side_line_connection_thick_thick.12.name=Filter Lane Thick->Thick L Forward -tile.furenikusroads.white_junction_mid_line_connection.0.name=Thin Mid Line to Thick Filter Line L -tile.furenikusroads.white_junction_mid_line_connection.4.name=Thin Mid Line to Thick Filter Line R -tile.furenikusroads.white_junction_mid_line_connection.8.name=Thick Mid Line to Thick Filter Line R -tile.furenikusroads.white_junction_mid_line_connection.12.name=Thick Mid Line to Thick Filter Line R - - -tile.furenikusroads.yellow_junction_filter_left.name=§eFilter Lane (Left) -tile.furenikusroads.yellow_junction_filter_right.name=§eFilter Lane (Right) -tile.furenikusroads.yellow_junction_filter_left_thin.name=§eFilter Lane (Left, Thin) -tile.furenikusroads.yellow_junction_filter_right_thin.name=§eFilter Lane (Right, Thin) -tile.furenikusroads.yellow_junction_filter_left_empty.name=§eFilter Lane (Left, Hidden) -tile.furenikusroads.yellow_junction_filter_right_empty.name=§eFilter Lane (Right, Hidden) -tile.furenikusroads.yellow_chevron_left_a.name=§eChevron (Left) -tile.furenikusroads.yellow_chevron_right_a.name=§eChevron (Right) -tile.furenikusroads.yellow_chevron_left_a_thin.name=§eChevron (Left, Thin) -tile.furenikusroads.yellow_chevron_right_a_thin.name=§eChevron (Right, Thin) -tile.furenikusroads.yellow_chevron_side_line.name=§eCentral Divider (Full) - -tile.furenikusroads.red_junction_filter_left.name=§cFilter Lane (Left) -tile.furenikusroads.red_junction_filter_right.name=§cFilter Lane (Right) -tile.furenikusroads.red_junction_filter_left_thin.name=§cFilter Lane (Left, Thin) -tile.furenikusroads.red_junction_filter_right_thin.name=§cFilter Lane (Right, Thin) -tile.furenikusroads.red_junction_filter_left_empty.name=§cFilter Lane (Left, Hidden) -tile.furenikusroads.red_junction_filter_right_empty.name=§cFilter Lane (Right, Hidden) -tile.furenikusroads.red_chevron_left_a.name=§cChevron (Left) -tile.furenikusroads.red_chevron_right_a.name=§cChevron (Right) -tile.furenikusroads.red_chevron_left_a_thin.name=§cChevron (Left, Thin) -tile.furenikusroads.red_chevron_right_a_thin.name=§cChevron (Right, Thin) -tile.furenikusroads.red_chevron_side_line.name=§cCentral Divider (Full) - -tile.furenikusroads.road_snow.name=Snow (But magic snow that settles on roads) - -tile.furenikusroads.road_block_diagonal_1_1.name=Diagonal Connector (1/1) -tile.furenikusroads.road_block_diagonal_1_2.name=Diagonal Connector (1/2) -tile.furenikusroads.road_block_diagonal_1_4.name=Diagonal Connector (1/4) -tile.furenikusroads.road_block_diagonal_2_4.name=Diagonal Connector (2/4) -tile.furenikusroads.road_block_diagonal_1_8.name=Diagonal Connector (1/8) -tile.furenikusroads.road_block_diagonal_2_8.name=Diagonal Connector (2/8) -tile.furenikusroads.road_block_diagonal_3_8.name=Diagonal Connector (3/8) -tile.furenikusroads.road_block_diagonal_4_8.name=Diagonal Connector (4/8) - -tile.furenikusroads.road_block_diagonal_1_1_mirror.name=Diagonal Connector (1/1 Mirrored) -tile.furenikusroads.road_block_diagonal_1_2_mirror.name=Diagonal Connector (1/2 Mirrored) -tile.furenikusroads.road_block_diagonal_1_4_mirror.name=Diagonal Connector (1/4 Mirrored) -tile.furenikusroads.road_block_diagonal_2_4_mirror.name=Diagonal Connector (2/4 Mirrored) -tile.furenikusroads.road_block_diagonal_1_8_mirror.name=Diagonal Connector (1/8 Mirrored) -tile.furenikusroads.road_block_diagonal_2_8_mirror.name=Diagonal Connector (2/8 Mirrored) -tile.furenikusroads.road_block_diagonal_3_8_mirror.name=Diagonal Connector (3/8 Mirrored) -tile.furenikusroads.road_block_diagonal_4_8_mirror.name=Diagonal Connector (4/8 Mirrored) - -item.pneumatic_drill.name=Pneumatic Drill -item.tarmac_rammer.name=Tarmac Rammer -item.paint_gun.name=Paint Gun -item.paint_scraper.name=Paint Scraper -item.wrench.name=Wrench - -item.pneumatic_drill_bit.name=Pneumatic Drill Bit -item.machine_frame.name=Machine Frame -item.machine_frame_electric.name=Electric Machine Frame -item.tool_handle.name=Tool Handle -item.large_glass_tank.name=Large Glass Tank -item.small_glass_tank.name=Small Glass Tank -item.paint_gun_barrel.name=Paint Gun Barrel -item.paint_gun_display.name=Paint Gun Display -item.coal_coke.name=Dried Coal -item.cement_dust.name=Cement Dust -item.limestone_dust.name=Limestone Dust -item.clinker_mix.name=Clinker Mix - -item.tooltip.pneumatic_drill=Used to destroy tarmac blocks (left click). Can also reduce the height by one (right click) -item.tooltip.paint_gun_1=Place paint in the world! -item.tooltip.paint_gun_2=Shift right click to open UI. -item.tooltip.paint_gun.selection=Selection: -item.tooltip.paint_gun.colour=Color: -item.tooltip.paint_gun.white=White level: -item.tooltip.paint_gun.yellow=Yellow level: -item.tooltip.paint_gun.red=Red level: -item.tooltip.tarmac_rammer_1=Used to increase the height of blocks -item.tooltip.tarmac_rammer_2=Right click, requires fragments in inventory -item.tooltip.wrench_1=Used to make minor adjustments to certain blocks -item.tooltip.wrench_2=Right-click the air to switch modes -item.tooltip.wrench_3=Current mode: - -item.tooltip.more_info=Press Shift to see more information - -colour.white=White -colour.yellow=Yellow -colour.red=Red - -item.tarmac_cutter_blade_1_iron.name=Iron Tarmac Cutter Blade -item.tarmac_cutter_blade_1_gold.name=Gold Tarmac Cutter Blade -item.tarmac_cutter_blade_1_diamond.name=Diamond Tarmac Cutter Blade -item.tarmac_cutter_blade_2_iron.name=Iron Tarmac Cutter Blade -item.tarmac_cutter_blade_2_gold.name=Gold Tarmac Cutter Blade -item.tarmac_cutter_blade_2_diamond.name=Diamond Tarmac Cutter Blade -item.tarmac_cutter_blade_4_iron.name=Iron Tarmac Cutter Blade -item.tarmac_cutter_blade_4_gold.name=Gold Tarmac Cutter Blade -item.tarmac_cutter_blade_4_diamond.name=Diamond Tarmac Cutter Blade -item.tarmac_cutter_blade_8_iron.name=Iron Tarmac Cutter Blade -item.tarmac_cutter_blade_8_gold.name=Gold Tarmac Cutter Blade -item.tarmac_cutter_blade_8_diamond.name=Diamond Tarmac Cutter Blade - -item.tarmac_fragment_standard.name=Tarmac Road Fragment -item.tarmac_fragment_concrete_1.name=Concrete Road Fragment -item.tarmac_fragment_concrete_2.name=Concrete Road Fragment -item.tarmac_fragment_light.name=Light Road Fragment -item.tarmac_fragment_fine.name=Fine Road Fragment -item.tarmac_fragment_dark.name=Dark Road Fragment -item.tarmac_fragment_pale.name=Pale Road Fragment -item.tarmac_fragment_red.name=Red Road Fragment -item.tarmac_fragment_blue.name=Blue Road Fragment -item.tarmac_fragment_white.name=White Road Fragment -item.tarmac_fragment_yellow.name=Yellow Road Fragment -item.tarmac_fragment_green.name=Green Road Fragment -item.tarmac_fragment_muddy.name=Mud Road Fragment - -item.tarmac_fragment_stone.name=Stone Road Fragment -item.tarmac_fragment_grass.name=Grass Road Fragment -item.tarmac_fragment_dirt.name=Dirt Road Fragment -item.tarmac_fragment_gravel.name=Gravel Road Fragment -item.tarmac_fragment_sand.name=Sand Road Fragment - -item.sidewalk_fragment_standard.name=Sidewalk Fragment -item.sidewalk_fragment_clean.name=Clean Sidewalk Fragment -item.sidewalk_fragment_dark.name=Dark Sidewalk Fragment -item.sidewalk_fragment_tan.name=Tan Sidewalk Fragment - -fluid.white_paint=White Paint -fluid.yellow_paint=Yellow Paint -fluid.red_paint=Red Paint -fluid.tar=Tar - -itemGroup.tab_roads=[Fureniku's Roads] Roads -itemGroup.tab_sidewalks=[Fureniku's Roads] Sidewalks -itemGroup.tab_tools=[Fureniku's Roads] Tools -itemGroup.tab_road_parts=[Fureniku's Roads] Road Parts -itemGroup.tab_diagonals=[Fureniku's Roads] Diagonal Connectors -itemGroup.tab_paint_lines=[Fureniku's Roads] Line Paints -itemGroup.tab_paint_icons=[Fureniku's Roads] Icon Paints -itemGroup.tab_paint_letters=[Fureniku's Roads] Letter Paints -itemGroup.tab_paint_text=[Fureniku's Roads] Text Paints -itemGroup.tab_paint_junction=[Fureniku's Roads] Junction Paints -itemGroup.tab_paint_customs=[Fureniku's Roads] Custom Paints - -roads.gui.inputSlot=Input -roads.gui.outputSlot=Output -roads.gui.fuelSlot=Fuel -roads.gui.tarInputSlot=Tar Bucket Input -roads.gui.tarOutputSlot=Tar Bucket Output -roads.gui.fluidInputSlot=Fluid Bucket Input -roads.gui.fluidOutputSlot=Fluid Bucket Output -roads.gui.bucketInputSlot=Empty Bucket for fluid -roads.gui.bucketOutputSlot=Empty Bucket from fluid -roads.gui.valid=Valid Recipes: -roads.gui.unused=Currently unused -roads.gui.road_generic_name=Road Block -roads.gui.road_generic_name_cut=Road Block (Cut) -roads.gui.fragment_generic_name=Road Fragments - -roads.gui.electric_crusher.name=Crusher -roads.gui.crusher.name=Crusher -roads.gui.crusher.tooltip_1=Crushes blocks to make different blocks! - -roads.gui.electric_road_factory.name=Road Factory -roads.gui.road_factory.name=Road Factory -roads.gui.road_factory.connect_pass=Tar Distiller Linked -roads.gui.road_factory.connect_failed_1=Tar Distiller not found. -roads.gui.road_factory.connect_failed_2=Place Tar Distiller to the left, -roads.gui.road_factory.connect_failed_3=or manually add Tar. -roads.gui.road_factory.link=Link -roads.gui.road_factory.tooltip_1=Create road blocks from their base block. -roads.gui.road_factory.tooltip_2=Tip: Place to the right of a Tar Distiller! -roads.gui.road_factory.modifierSlot=Modifier Slot -roads.gui.road_factory.tar_required=All recipes require 1000mb of Tar per 8 blocks -roads.gui.road_factory.modifierSlot.tooltip_1=Use Standard Tarmac or Crushed Rock & Tar with -roads.gui.road_factory.modifierSlot.tooltip_2=a dye to craft coloured roads -roads.gui.road_factory.modifierSlot.red_dye=Red Dye -roads.gui.road_factory.modifierSlot.blue_dye=Blue Dye -roads.gui.road_factory.modifierSlot.yellow_dye=Yellow Dye -roads.gui.road_factory.modifierSlot.green_dye=Green Dye -roads.gui.road_factory.modifierSlot.white_dye=White Dye - -roads.gui.electric_tar_distiller.name=Tar Distiller -roads.gui.tar_distiller.name=Tar Distiller -roads.gui.tar_distiller.tooltip_1=Creates tar from input items. -roads.gui.tar_distiller.tooltip_2=Currently only takes coal. Fuel with lava. - -roads.gui.electric_tarmac_cutter.name=Tarmac Cutter -roads.gui.tarmac_cutter.name=Tarmac Cutter -roads.gui.tarmac_cutter.bladeSlot=Cutter Blade -roads.gui.tarmac_cutter.tooltip_1=Cuts tarmac down to size -roads.gui.tarmac_cutter.tooltip_2=Use Tarmac Cutter Blades to set the required size. - -roads.gui.electric_paint_filler.name=Paint Filler -roads.gui.paint_filler.name=Paint Filler -roads.gui.paint_filler.paint_gun_slot=Paint Gun Mount -roads.gui.paint_filler.white_slot=White Dye Converter -roads.gui.paint_filler.yellow_slot=Yellow Dye Converter -roads.gui.paint_filler.red_slot=Red Dye Converter -roads.gui.paint_filler.tooltip_1=Used to create paint, then fill a paint gun. -roads.gui.paint_filler.tooltip_2=Fuel, then add white, yellow or red dye to begin! - -roads.gui.paint_filler_hopper.tooltip_1=Allows pumping of items and paints in/out of the Paint Filler. - -roads.gui.paint_oven.dye_slot=Dye -roads.gui.paint_oven.tooltip_1=Mixes dyes with water for higher paint yields. -roads.gui.paint_oven.tooltip_2=Requires some method of transporting the paint! - -roads.gui.compactor.name=Compactor -roads.gui.compactor_electric.name=Compactor -roads.gui.compactor.fragmentSlot=Tarmac Fragments -roads.gui.compactor.size=Size to compress to -roads.gui.compactor.tooltip_1=Compacts Road Fragments into new Road Blocks - -roads.gui.fabricator.name=Fabricator -roads.gui.electric_fabricator.name=Fabricator -roads.gui.fabricator.requirement=Requires: -roads.gui.fabricator.recipe_select=Click to select recipe -roads.gui.fabricator.tooltip_1=Crafts decorative blocks to prettify your roads! diff --git a/src/main/resources/assets/furenikusroads/lang/it_it.lang b/src/main/resources/assets/furenikusroads/lang/it_it.lang deleted file mode 100644 index 43a2b47f..00000000 --- a/src/main/resources/assets/furenikusroads/lang/it_it.lang +++ /dev/null @@ -1,720 +0,0 @@ -tile.furenikusroads.tar_fluid.name=Asfalto -tile.furenikusroads.paint_white_fluid.name=Vernice bianca -tile.furenikusroads.paint_yellow_fluid.name=Vernice gialla -tile.furenikusroads.paint_red_fluid.name=Vernice rossa - - -tile.furenikusroads.road_block_standard.name=Asfalto standard -tile.furenikusroads.road_block_concrete_1.name=Calcestruzzo -tile.furenikusroads.road_block_concrete_2.name=Calcestruzzo -tile.furenikusroads.road_block_light.name=Asfalto chiaro -tile.furenikusroads.road_block_dark.name=Asfalto scuro -tile.furenikusroads.road_block_pale.name=Asfalto pallido -tile.furenikusroads.road_block_red.name=Asfalto rosso -tile.furenikusroads.road_block_blue.name=Asfalto blu -tile.furenikusroads.road_block_white.name=Asfalto bianco -tile.furenikusroads.road_block_yellow.name=Asfalto giallo -tile.furenikusroads.road_block_green.name=Asfalto verde -tile.furenikusroads.road_block_fine.name=Asfalto fine -tile.furenikusroads.road_block_muddy.name=Fango -tile.furenikusroads.road_block_muddy_dried.name=Fango secco - -tile.furenikusroads.road_block_stone.name=Pietra -tile.furenikusroads.road_block_grass.name=Erba -tile.furenikusroads.road_block_dirt.name=Terra -tile.furenikusroads.road_block_sand.name=Sabbia -tile.furenikusroads.road_block_gravel.name=Ghiaia - -tile.furenikusroads.sidewalk.name=Marciapiede -tile.furenikusroads.sidewalk_clean.name=Marciapiede chiaro -tile.furenikusroads.sidewalk_dark.name=Marciapiede scuro -tile.furenikusroads.sidewalk_tan.name=Marciapiede abbronzato - -tile.furenikusroads.paint_filler.name=Riempitivo di vernice -tile.furenikusroads.tar_distiller.name=Distillatore di asfalto -tile.furenikusroads.road_factory.name=Fabbrica di strade -tile.furenikusroads.tarmac_cutter.name=Taglierina per asfalto -tile.furenikusroads.crusher.name=Frantoio -tile.furenikusroads.paint_oven.name=Forno di verniciatura -tile.furenikusroads.compactor.name=Compattatore -tile.furenikusroads.fabricator.name=Fabbricatore -tile.furenikusroads.paint_filler_hopper.name=Tramoggia di riempimento della vernice - -tile.furenikusroads.paint_filler_electric.name=Riempitivo di vernice elettrico -tile.furenikusroads.tar_distiller_electric.name=Distillatore di asfalto elettrico -tile.furenikusroads.road_factory_electric.name=Fabbrica di strade elettrica -tile.furenikusroads.tarmac_cutter_electric.name=Taglierina per asfalto elettrica -tile.furenikusroads.crusher_electric.name=Frantoio elettrico -tile.furenikusroads.paint_oven_electric.name=Forno di verniciatura elettrico -tile.furenikusroads.compactor_electric.name=Compattatore elettrico -tile.furenikusroads.fabricator_electric.name=Fabbricatore elettrico - -tile.furenikusroads.kerb_standard.0.name=Cordolo (non verniciato) -tile.furenikusroads.kerb_standard.4.name=Cordolo (bianco) -tile.furenikusroads.kerb_standard.8.name=Cordolo (giallo) -tile.furenikusroads.kerb_standard.12.name=Cordolo (rosso) - -tile.furenikusroads.tactile_crossing_bumps.name=Marciapiede tattile -tile.furenikusroads.manhole_cover_round.name=Tombino -tile.furenikusroads.manhole_cover_square.name=Tombino - -tile.furenikusroads.street_light_1.name=Lampione -tile.furenikusroads.street_light_2.name=Lampione (largo) -tile.furenikusroads.street_light_3.name=Lampione -tile.furenikusroads.street_light_4.name=Lampione (lungo) -tile.furenikusroads.street_light_5.name=Lampione (inclinato) -tile.furenikusroads.street_light_6.name=Lampione (inclinato) - -tile.furenikusroads.post_large_vertical.name=Palo (grande) -tile.furenikusroads.post_medium_vertical.name=Palo (medio) -tile.furenikusroads.post_small_vertical.name=Palo (piccolo) -tile.furenikusroads.post_large_vertical_2.name=Palo (grande) -tile.furenikusroads.post_medium_vertical_2.name=Palo (medio) -tile.furenikusroads.post_small_vertical_2.name=Palo (piccolo) -tile.furenikusroads.post_large_horizontal.name=Palo orizzontale (grande) -tile.furenikusroads.post_medium_horizontal.name=Palo orizzontale (medio) -tile.furenikusroads.post_small_horizontal.name=Palo orizzontale (piccolo) - -tile.furenikusroads.barrier_standard_mid.name=Barriera stradale standard (centro) -tile.furenikusroads.barrier_standard_edge.name=Barriera stradale standard (bordo) -tile.furenikusroads.barrier_standard_edge_double.name=Barriera stradale standard (doppia bordo) -tile.furenikusroads.barrier_end.0.name=Conclusione barriera stradale standard (centro) - -tile.furenikusroads.barrier_tall_mid.name=Barriera stradale alta (centro) -tile.furenikusroads.barrier_tall_edge.name=Barriera stradale alta (bordo) -tile.furenikusroads.barrier_tall_edge_double.name=Barriera stradale alta (doppia bordo) - -tile.furenikusroads.barrier_concrete_1_mid.name=Barriera in calcestruzzo (centro) -tile.furenikusroads.barrier_concrete_2_mid.name=Barriera in calcestruzzo (centro) -tile.furenikusroads.barrier_bars_mid.name=Sbarre (centro) -tile.furenikusroads.barrier_bars_mid_2.name=Sbarre (centro) -tile.furenikusroads.barrier_bars_mid_3.name=Sbarre (centro) -tile.furenikusroads.barrier_wall_mid_concrete_1.name=Muro in calcestruzzo (centro) -tile.furenikusroads.barrier_wall_mid_concrete_2.name=Muro in calcestruzzo (centro) -tile.furenikusroads.barrier_bars_mid_concrete_1.name=Sbarre con base in calcestruzzo (centro) -tile.furenikusroads.barrier_bars_mid_concrete_2.name=Sbarre con Base in Calcestruzzo (centro) -tile.furenikusroads.barrier_wall_pole_mid_concrete_1.name=Muro in calcestruzzo con palo (centro) -tile.furenikusroads.barrier_wall_pole_mid_concrete_2.name=Muro in calcestruzzo con palo (centro) -tile.furenikusroads.barrier_low_mid.name=Barriera bassa (centro) - -tile.furenikusroads.barrier_wall_edge_concrete_1.name=Barriera in calcestruzzo (bordo) -tile.furenikusroads.barrier_wall_edge_concrete_2.name=Barriera in calcestruzzo (bordo) -tile.furenikusroads.barrier_bars_edge.name=Sbarre (bordo) -tile.furenikusroads.barrier_bars_edge_2.name=Sbarre (Bordo) -tile.furenikusroads.barrier_bars_edge_3.name=Sbarre (Bordo) -tile.furenikusroads.barrier_concrete_edge_1.name=Barriera in calcestruzzo (bordo) -tile.furenikusroads.barrier_concrete_edge_2.name=Barriera in calcestruzzo (bordo) -tile.furenikusroads.barrier_bars_edge_concrete_1.name=Sbarre con base in calcestruzzo (bordo) -tile.furenikusroads.barrier_bars_edge_concrete_2.name=Sbarre con base in Calcestruzzo (bordo) -tile.furenikusroads.barrier_wall_pole_edge_concrete_1.name=Muro in calcestruzzo con palo (bordo) -tile.furenikusroads.barrier_wall_pole_edge_concrete_2.name=Muro in calcestruzzo con palo (bordo) -tile.furenikusroads.barrier_low_edge.name=Barriera bassa (bordo) - -tile.furenikusroads.barrier_bars_edge_double.name=Sbarre (doppie, bordo) -tile.furenikusroads.barrier_bars_edge_double_2.name=Sbarre (doppie, bordo) -tile.furenikusroads.barrier_bars_edge_double_3.name=Sbarre (doppie, bordo) -tile.furenikusroads.barrier_wall_edge_concrete_1_double.name=Muro in calcestruzzo (doppio, bordo) -tile.furenikusroads.barrier_wall_edge_concrete_2_double.name=Muro in calcestruzzo (doppio, bordo) -tile.furenikusroads.barrier_bars_edge_concrete_1_double.name=Sbarre con base in calcestruzzo (doppie, bordo) -tile.furenikusroads.barrier_bars_edge_concrete_2_double.name=Sbarre con base in calcestruzzo (doppie, bordo) -tile.furenikusroads.barrier_wall_pole_edge_concrete_1_double.name=Muro in calcestruzzo con palo (doppio, bordo) -tile.furenikusroads.barrier_wall_pole_edge_concrete_2_double.name=Muro in calcestruzzo con palo (doppio, bordo) - - - - - - -tile.furenikusroads.drain_cover_1.name=Coperchio dello scarico -tile.furenikusroads.drain_cover_2.name=Coperchio dello scarico - -tile.furenikusroads.bollard_1.0.name=dissuasore del traffico spesso (guida a sinistra) -tile.furenikusroads.bollard_1.1.name=dissuasore del traffico spesso (guida a sinistra) -tile.furenikusroads.bollard_1.2.name=dissuasore del traffico spesso (guida a destra) -tile.furenikusroads.bollard_1.3.name=dissuasore del traffico spesso (guida a destra) -tile.furenikusroads.bollard_1.4.name=dissuasore del traffico sottile (guida a sinistra) -tile.furenikusroads.bollard_1.5.name=dissuasore del traffico sottile (guida a sinistra) -tile.furenikusroads.bollard_1.6.name=dissuasore del traffico sottile (guida a destra) -tile.furenikusroads.bollard_1.7.name=dissuasore del traffico sottile (guida a destra) -tile.furenikusroads.bollard_1.8.name=Non implementato -tile.furenikusroads.bollard_1.9.name=Non implementato -tile.furenikusroads.bollard_1.10.name=Non implementato -tile.furenikusroads.bollard_1.11.name=Non implementato -tile.furenikusroads.bollard_1.12.name=Non implementato -tile.furenikusroads.bollard_1.13.name=Non implementato -tile.furenikusroads.bollard_1.14.name=Non implementato -tile.furenikusroads.bollard_1.15.name=Non implementato - -item.diamond_nugget.name=Pepita in diamante - -tile.furenikusroads.bollard_2.0.name=Dissuasore in calcestruzzo tipo 1 -tile.furenikusroads.bollard_2.1.name=Dissuasore in calcestruzzo tipo 2 -tile.furenikusroads.bollard_2.2.name=Dissuasore in metallo -tile.furenikusroads.bollard_2.3.name=Dissuasore in metallo (striato) -tile.furenikusroads.bollard_2.4.name=Dissuasore in metallo (anelli) -tile.furenikusroads.bollard_2.5.name=Dissuasore in metallo (giallo) -tile.furenikusroads.bollard_2.6.name=Dissuasore in metallo sottile -tile.furenikusroads.bollard_2.7.name=Dissuasore in metallo sottile (striato) -tile.furenikusroads.bollard_2.8.name=Dissuasore in metallo sottile (anelli) -tile.furenikusroads.bollard_2.9.name=Dissuasore in metallo sottile (giallo) -tile.furenikusroads.bollard_2.10.name=Dissuasore (sormontato) -tile.furenikusroads.bollard_2.11.name=Dissuasore (sormontato, anelli) -tile.furenikusroads.bollard_2.12.name=Dissuasore in metallo (illuminato) -tile.furenikusroads.bollard_2.13.name=Dissuasore in metallo (nero, illuminato) -tile.furenikusroads.bollard_2.14.name=Dissuasore portatile (arancione) -tile.furenikusroads.bollard_2.15.name=Dissuasore portatile (giallo) - -tile.furenikusroads.bollard_3.0.name=Dissuasore retrattile in metallo -tile.furenikusroads.bollard_3.1.name=Dissuasore retrattile in metallo -tile.furenikusroads.bollard_3.2.name=Dissuasore retrattile in metallo (nero) -tile.furenikusroads.bollard_3.3.name=Dissuasore retrattile in metallo (nero) -tile.furenikusroads.bollard_3.4.name=Dissuasore retrattile in metallo alto -tile.furenikusroads.bollard_3.5.name=Dissuasore retrattile in metallo alto -tile.furenikusroads.bollard_3.6.name=Dissuasore retrattile in metallo alto (nero) -tile.furenikusroads.bollard_3.7.name=Dissuasore retrattile in metallo alto (nero) -tile.furenikusroads.bollard_3.8.name=Dissuasore retrattile in metallo -tile.furenikusroads.bollard_3.9.name=Dissuasore retrattile in metallo -tile.furenikusroads.bollard_3.10.name=Dissuasore retrattile in metallo (anelli) -tile.furenikusroads.bollard_3.11.name=Dissuasore retrattile in metallo (anelli) -tile.furenikusroads.bollard_3.12.name=Dissuasore retrattile in metallo sottile -tile.furenikusroads.bollard_3.13.name=Dissuasore retrattile in metallo sottile -tile.furenikusroads.bollard_3.14.name=Dissuasore retrattile in metallo sottile (anelli) -tile.furenikusroads.bollard_3.15.name=Dissuasore retrattile in metallo sottile (anelli) - -tile.furenikusroads.bollard_folding_smooth_metal.0.name=Dissuasore pieghevole in metallo -tile.furenikusroads.bollard_folding_smooth_metal.1.name=Dissuasore pieghevole in metallo -tile.furenikusroads.bollard_folding_smooth_metal.2.name=Dissuasore pieghevole in metallo -tile.furenikusroads.bollard_folding_smooth_metal.3.name=Dissuasore pieghevole in metallo -tile.furenikusroads.bollard_folding_smooth_metal.4.name=Dissuasore pieghevole in metallo -tile.furenikusroads.bollard_folding_smooth_metal.5.name=Dissuasore pieghevole in metallo -tile.furenikusroads.bollard_folding_smooth_metal.6.name=Dissuasore pieghevole in metallo -tile.furenikusroads.bollard_folding_smooth_metal.7.name=Dissuasore pieghevole in metallo -tile.furenikusroads.bollard_folding_smooth_metal.8.name=Dissuasore pieghevole in metallo spesso -tile.furenikusroads.bollard_folding_smooth_metal.9.name=Dissuasore pieghevole in metallo spesso -tile.furenikusroads.bollard_folding_smooth_metal.10.name=Dissuasore pieghevole in metallo spesso -tile.furenikusroads.bollard_folding_smooth_metal.11.name=Dissuasore pieghevole in metallo spesso -tile.furenikusroads.bollard_folding_smooth_metal.12.name=Dissuasore pieghevole in metallo spesso -tile.furenikusroads.bollard_folding_smooth_metal.13.name=Dissuasore pieghevole in metallo spesso -tile.furenikusroads.bollard_folding_smooth_metal.14.name=Dissuasore pieghevole in metallo spesso -tile.furenikusroads.bollard_folding_smooth_metal.15.name=Dissuasore pieghevole in metallo spesso - -tile.furenikusroads.bollard_folding_black.0.name=Dissuasore pieghevole nero -tile.furenikusroads.bollard_folding_black.1.name=Dissuasore pieghevole nero -tile.furenikusroads.bollard_folding_black.2.name=Dissuasore pieghevole nero -tile.furenikusroads.bollard_folding_black.3.name=Dissuasore pieghevole nero -tile.furenikusroads.bollard_folding_black.4.name=Dissuasore pieghevole nero -tile.furenikusroads.bollard_folding_black.5.name=Dissuasore pieghevole nero -tile.furenikusroads.bollard_folding_black.6.name=Dissuasore pieghevole nero -tile.furenikusroads.bollard_folding_black.7.name=Dissuasore pieghevole nero -tile.furenikusroads.bollard_folding_black.8.name=Dissuasore pieghevole nero spesso -tile.furenikusroads.bollard_folding_black.9.name=Dissuasore pieghevole nero spesso -tile.furenikusroads.bollard_folding_black.10.name=Dissuasore pieghevole nero spesso -tile.furenikusroads.bollard_folding_black.11.name=Dissuasore pieghevole nero spesso -tile.furenikusroads.bollard_folding_black.12.name=Dissuasore pieghevole nero spesso -tile.furenikusroads.bollard_folding_black.13.name=Dissuasore pieghevole nero spesso -tile.furenikusroads.bollard_folding_black.14.name=Dissuasore pieghevole nero spesso -tile.furenikusroads.bollard_folding_black.15.name=Dissuasore pieghevole nero spesso - -//Actually YELLOW bollards. Just a quirk of my internal naming means we only accept white as a colour in internal names. -tile.furenikusroads.bollard_folding_white.0.name=Dissuasore pieghevole giallo -tile.furenikusroads.bollard_folding_white.1.name=Dissuasore pieghevole giallo -tile.furenikusroads.bollard_folding_white.2.name=Dissuasore pieghevole giallo -tile.furenikusroads.bollard_folding_white.3.name=Dissuasore pieghevole giallo -tile.furenikusroads.bollard_folding_white.4.name=Dissuasore pieghevole giallo -tile.furenikusroads.bollard_folding_white.5.name=Dissuasore pieghevole giallo -tile.furenikusroads.bollard_folding_white.6.name=Dissuasore pieghevole giallo -tile.furenikusroads.bollard_folding_white.7.name=Dissuasore pieghevole giallo -tile.furenikusroads.bollard_folding_white.8.name=Dissuasore pieghevole giallo spesso -tile.furenikusroads.bollard_folding_white.9.name=Dissuasore pieghevole giallo spesso -tile.furenikusroads.bollard_folding_white.10.name=Dissuasore pieghevole giallo spesso -tile.furenikusroads.bollard_folding_white.11.name=Dissuasore pieghevole giallo spesso -tile.furenikusroads.bollard_folding_white.12.name=Dissuasore pieghevole giallo spesso -tile.furenikusroads.bollard_folding_white.13.name=Dissuasore pieghevole giallo spesso -tile.furenikusroads.bollard_folding_white.14.name=Dissuasore pieghevole giallo spesso -tile.furenikusroads.bollard_folding_white.15.name=Dissuasore pieghevole giallo spesso - -tile.furenikusroads.wheel_stop.0.name=Fermaruota in calcestruzzo -tile.furenikusroads.wheel_stop.1.name=Fermaruota in calcestruzzo -tile.furenikusroads.wheel_stop.2.name=Fermaruota in calcestruzzo -tile.furenikusroads.wheel_stop.3.name=Fermaruota in calcestruzzo -tile.furenikusroads.wheel_stop.4.name=Fermaruota in calcestruzzo -tile.furenikusroads.wheel_stop.5.name=Fermaruota in calcestruzzo -tile.furenikusroads.wheel_stop.6.name=Fermaruota in calcestruzzo -tile.furenikusroads.wheel_stop.7.name=Fermaruota in calcestruzzo -tile.furenikusroads.wheel_stop.8.name=Fermaruota giallo -tile.furenikusroads.wheel_stop.9.name=Fermaruota giallo -tile.furenikusroads.wheel_stop.10.name=Fermaruota giallo -tile.furenikusroads.wheel_stop.11.name=Fermaruota giallo -tile.furenikusroads.wheel_stop.12.name=Fermaruota nero -tile.furenikusroads.wheel_stop.13.name=Fermaruota nero -tile.furenikusroads.wheel_stop.14.name=Fermaruota nero -tile.furenikusroads.wheel_stop.15.name=Fermaruota nero - -tile.furenikusroads.speed_bump.0.name=Dosso nero -tile.furenikusroads.speed_bump.1.name=Dosso nero -tile.furenikusroads.speed_bump.2.name=Dosso giallo -tile.furenikusroads.speed_bump.3.name=Dosso giallo -tile.furenikusroads.speed_bump.4.name=Dosso in calcestruzzo -tile.furenikusroads.speed_bump.5.name=Dosso in calcestruzzo -tile.furenikusroads.speed_bump.6.name=Dosso in calcestruzzo -tile.furenikusroads.speed_bump.7.name=Dosso in calcestruzzo -tile.furenikusroads.speed_bump.8.name=Dosso in asfalto standard -tile.furenikusroads.speed_bump.9.name=Dosso in asfalto standard -tile.furenikusroads.speed_bump.10.name=Dosso in asfalto bianco -tile.furenikusroads.speed_bump.11.name=Dosso in asfalto bianco -tile.furenikusroads.speed_bump.12.name=Dosso in asfalto giallo -tile.furenikusroads.speed_bump.13.name=Dosso in asfalto giallo -tile.furenikusroads.speed_bump.14.name=Dosso in asfalto rosso -tile.furenikusroads.speed_bump.15.name=Dosso in asfalto rosso - -tile.furenikusroads.cats_eye_white.name=Riflettore bianco -tile.furenikusroads.cats_eye_yellow.name=Riflettore giallo -tile.furenikusroads.cats_eye_red.name=Riflettore rosso -tile.furenikusroads.cats_eye_green.name=Riflettore verde -tile.furenikusroads.cats_eye_blue.name=Riflettore blu - -tile.furenikusroads.cats_eye_red_green.name=Riflettore rosso-verde -tile.furenikusroads.cats_eye_white_red.name=Riflettore bianco-rosso -tile.furenikusroads.cats_eye_white_yellow.name=Riflettore bianco-giallo -tile.furenikusroads.cats_eye_white_green.name=Riflettore bianco-verde -tile.furenikusroads.cats_eye_yellow_red.name=Riflettore rosso-giallo - -tile.furenikusroads.cats_eye_white_double.name=Riflettori bianchi -tile.furenikusroads.cats_eye_yellow_double.name=Riflettori gialli -tile.furenikusroads.cats_eye_red_double.name=Riflettori rossi -tile.furenikusroads.cats_eye_green_double.name=Riflettori verdi -tile.furenikusroads.cats_eye_blue_double.name=Riflettori blu - -tile.furenikusroads.cats_eye_red_green_double.name=Riflettori rosso-verdi -tile.furenikusroads.cats_eye_white_red_double.name=Riflettori bianco-rossi -tile.furenikusroads.cats_eye_white_yellow_double.name=Riflettori bianco-gialli -tile.furenikusroads.cats_eye_white_green_double.name=Riflettori bianco-verdi -tile.furenikusroads.cats_eye_yellow_red_double.name=Riflettori giallo-rossi - -tile.furenikusroads.street_block_a.0.name=Marciapiede (mattoni) -tile.furenikusroads.street_block_a.1.name=Marciapiede (mattoni incrociati) -tile.furenikusroads.street_block_a.2.name=Marciapiede (piastrelle piccole) -tile.furenikusroads.street_block_a.3.name=Marciapiede (mattonella piccola) -tile.furenikusroads.street_block_a.4.name=Marciapiede (mattonella grande) -tile.furenikusroads.street_block_a.5.name=Marciapiede (mattoni grandi) -tile.furenikusroads.street_block_a.6.name=Marciapiede (lastra orizzontale) -tile.furenikusroads.street_block_a.7.name=Marciapiede (lastra verticale) -tile.furenikusroads.street_block_a.8.name=Marciapiede abbronzato (mattoni) -tile.furenikusroads.street_block_a.9.name=Marciapiede abbronzato (mattoni incrociati) -tile.furenikusroads.street_block_a.10.name=Marciapiede abbronzato (piastrelle piccole) -tile.furenikusroads.street_block_a.11.name=Marciapiede abbronzato (mattonella piccola) -tile.furenikusroads.street_block_a.12.name=Marciapiede abbronzato (mattonella grande) -tile.furenikusroads.street_block_a.13.name=Marciapiede abbronzato (mattoni grandi) -tile.furenikusroads.street_block_a.14.name=Marciapiede abbronzato (lastra orizzontale) -tile.furenikusroads.street_block_a.15.name=Marciapiede abbronzato (lastra verticale) - -tile.furenikusroads.street_block_b.0.name=Marciapiede chiaro (mattoni) -tile.furenikusroads.street_block_b.1.name=Marciapiede chiaro (mattoni incrociati) -tile.furenikusroads.street_block_b.2.name=Marciapiede chiaro (piastrelle piccole) -tile.furenikusroads.street_block_b.3.name=Marciapiede chiaro (mattonella piccola) -tile.furenikusroads.street_block_b.4.name=Marciapiede chiaro (mattonella grande) -tile.furenikusroads.street_block_b.5.name=Marciapiede chiaro (mattoni grandi) -tile.furenikusroads.street_block_b.6.name=Marciapiede chiaro (lastra Orizzontale) -tile.furenikusroads.street_block_b.7.name=Marciapiede chiaro (lastra verticale) -tile.furenikusroads.street_block_b.8.name=Marciapiede scuro (mattoni) -tile.furenikusroads.street_block_b.9.name=Marciapiede scuro (mattoni incrociati) -tile.furenikusroads.street_block_b.10.name=Marciapiede scuro (piastrelle piccole) -tile.furenikusroads.street_block_b.11.name=Marciapiede scuro (mattonella piccola) -tile.furenikusroads.street_block_b.12.name=Marciapiede scuro (mattonella grande) -tile.furenikusroads.street_block_b.13.name=Marciapiede scuro (mattoni grandi) -tile.furenikusroads.street_block_b.14.name=Marciapiede scuro (lastra orizzontale) -tile.furenikusroads.street_block_b.15.name=Marciapiede scuro (lastra verticale) - -tile.furenikusroads.generic_blocks.0.name=Roccia frantumata -tile.furenikusroads.generic_blocks.1.name=Clinker -tile.furenikusroads.generic_blocks.2.name=Cemento -tile.furenikusroads.generic_blocks.3.name=Calcare - -tile.furenikusroads.line_white_straight_full.0.name=Linea dritta -tile.furenikusroads.line_white_straight_full.2.name=Linea dritta (connessa) -tile.furenikusroads.line_white_straight_thick.0.name=Linea dritta spessa -tile.furenikusroads.line_white_straight_thick.2.name=Linea dritta spessa (connessa) -tile.furenikusroads.line_white_straight_double.0.name=Linea dritta doppia -tile.furenikusroads.line_white_straight_double.2.name=Linea dritta doppia (connessa) -tile.furenikusroads.line_white_straight_double_thick.0.name=Linea dritta doppia spessa -tile.furenikusroads.line_white_straight_double_thick.2.name=Linea dritta doppia spessa (connessa) -tile.furenikusroads.line_white_side_double.0.name=Linea laterale doppia (connessa) -tile.furenikusroads.line_white_side_double.6.name=Linea laterale doppia -tile.furenikusroads.line_white_side_double_thick.0.name=Linea laterale doppia spessa (connessa) -tile.furenikusroads.line_white_side_double_thick.6.name=Linea laterale doppia spessa -tile.furenikusroads.line_white_side_single.0.name=Linea laterale (connessa) -tile.furenikusroads.line_white_side_single.6.name=Linea laterale -tile.furenikusroads.line_white_side_single_thick.0.name=Linea laterale spessa (connessa) -tile.furenikusroads.line_white_side_single_thick.6.name=Linea laterale spessa -tile.furenikusroads.line_white_far_side.0.name=Linea laterale del bordo (connessa) -tile.furenikusroads.line_white_far_side.6.name=Linea laterale del bordo -tile.furenikusroads.line_white_far_side_thick.0.name=Linea laterale del bordo spessa (connessa) -tile.furenikusroads.line_white_far_side_thick.6.name=Linea laterale del bordo spessa -tile.furenikusroads.line_white_middle_half_double.0.name=Linea dritta doppia (mezza) -tile.furenikusroads.line_white_middle_dash_double.0.name=Linea dritta doppia (tratteggiata) -tile.furenikusroads.line_white_middle_short.0.name=Linea dritta corta -tile.furenikusroads.line_white_filter_lane.0.name=Linea dritta corta spessa -tile.furenikusroads.line_white_side_short.0.name=Linea dritta laterale corta -tile.furenikusroads.line_white_thin_crossing.0.name=Attraversamento (sottile) - -tile.furenikusroads.white_wheelchair_icon.0.name=Handicap -tile.furenikusroads.white_chevron.0.name=Chevron -tile.furenikusroads.white_pedestrian.0.name=Pedone -tile.furenikusroads.white_merge_arrow.0.name=Freccia di giunzione -tile.furenikusroads.white_give_way.0.name=Dare precedenza -tile.furenikusroads.white_arrow_line.0.name=Freccia (corpo) -tile.furenikusroads.white_arrow.0.name=Freccia (dritta) -tile.furenikusroads.white_arrow.4.name=Freccia (laterale) -tile.furenikusroads.white_arrow_diagonal.4.name=Freccia (corpo, diagonale) -tile.furenikusroads.white_arrow_diagonal.0.name=Freccia (diagonale) -tile.furenikusroads.white_crossing_paint.name=Passaggio pedonale -tile.furenikusroads.line_white_thin_crossing.name=Passaggio pedonale (sottile) -tile.furenikusroads.line_white_crossing_diagonal.0.name=Linea di attraversamento -tile.furenikusroads.white_junction_a.0.name=Entrata giunzione destra -tile.furenikusroads.white_junction_a.4.name=Uscita giunzione destra -tile.furenikusroads.white_junction_a.8.name=Entrata/uscita giunzione centro-destra -tile.furenikusroads.white_junction_b.0.name=Entrata giunzione sinistra -tile.furenikusroads.white_junction_b.4.name=Uscita giunzione sinistra -tile.furenikusroads.white_junction_b.8.name=Entrata/uscita giunzione centro-sinistra -tile.furenikusroads.hatch_box_white.name=scatola da cova - -tile.furenikusroads.paint_letter_white_ab.0.name=Lettera A -tile.furenikusroads.paint_letter_white_ab.8.name=Lettera B -tile.furenikusroads.paint_letter_white_cd.0.name=Lettera C -tile.furenikusroads.paint_letter_white_cd.8.name=Lettera D -tile.furenikusroads.paint_letter_white_ef.0.name=Lettera E -tile.furenikusroads.paint_letter_white_ef.8.name=Lettera F -tile.furenikusroads.paint_letter_white_gh.0.name=Lettera G -tile.furenikusroads.paint_letter_white_gh.8.name=Lettera H -tile.furenikusroads.paint_letter_white_ij.0.name=Lettera I -tile.furenikusroads.paint_letter_white_ij.8.name=Lettera J -tile.furenikusroads.paint_letter_white_kl.0.name=Lettera K -tile.furenikusroads.paint_letter_white_kl.8.name=Lettera L -tile.furenikusroads.paint_letter_white_mn.0.name=Lettera M -tile.furenikusroads.paint_letter_white_mn.8.name=Lettera N -tile.furenikusroads.paint_letter_white_op.0.name=Lettera O -tile.furenikusroads.paint_letter_white_op.8.name=Lettera P -tile.furenikusroads.paint_letter_white_qr.0.name=Lettera Q -tile.furenikusroads.paint_letter_white_qr.8.name=Lettera R -tile.furenikusroads.paint_letter_white_st.0.name=Lettera S -tile.furenikusroads.paint_letter_white_st.8.name=Lettera T -tile.furenikusroads.paint_letter_white_uv.0.name=Lettera U -tile.furenikusroads.paint_letter_white_uv.8.name=Lettera V -tile.furenikusroads.paint_letter_white_wx.0.name=Lettera W -tile.furenikusroads.paint_letter_white_wx.8.name=Lettera X -tile.furenikusroads.paint_letter_white_yz.0.name=Lettera Y -tile.furenikusroads.paint_letter_white_yz.8.name=Lettera Z -tile.furenikusroads.paint_letter_white_01.0.name=Numero 0 -tile.furenikusroads.paint_letter_white_01.8.name=Numero 1 -tile.furenikusroads.paint_letter_white_23.0.name=Numero 2 -tile.furenikusroads.paint_letter_white_23.8.name=Numero 3 -tile.furenikusroads.paint_letter_white_45.0.name=Numero 4 -tile.furenikusroads.paint_letter_white_45.8.name=Numero 5 -tile.furenikusroads.paint_letter_white_67.0.name=Numero 6 -tile.furenikusroads.paint_letter_white_67.8.name=Numero 7 -tile.furenikusroads.paint_letter_white_89.0.name=Numero 8 -tile.furenikusroads.paint_letter_white_89.8.name=Numero 9 -tile.furenikusroads.paint_letter_white_punct_question_exclamation.0.name=? -tile.furenikusroads.paint_letter_white_punct_question_exclamation.8.name=! -tile.furenikusroads.paint_letter_white_punct_hash_slash.0.name=# -tile.furenikusroads.paint_letter_white_punct_hash_slash.8.name=/ - -tile.furenikusroads.white_slow.0.name=Scritta prefabbricata: Slow (piccola) -tile.furenikusroads.white_slow.4.name=Scritta prefabbricata Slow (grande) -tile.furenikusroads.white_stop.0.name=Scritta prefabbricata: Stop (piccola) -tile.furenikusroads.white_stop.4.name=Scritta prefabbricata: Stop (grande) -tile.furenikusroads.white_bike.0.name=Scritta prefabbricata: Bike (piccola) -tile.furenikusroads.white_bike.4.name=Scritta prefabbricata: Bike (grande) -tile.furenikusroads.white_bus.0.name=Scritta prefabbricata: Bus (piccola) -tile.furenikusroads.white_bus.4.name=Scritta prefabbricata: Bus (grande) -tile.furenikusroads.white_taxi.0.name=Scritta prefabbricata: Taxi (piccola) -tile.furenikusroads.white_taxi.4.name=Scritta prefabbricata: Taxi (grande) -tile.furenikusroads.white_lane.0.name=Scritta prefabbricata: Lane (piccola) -tile.furenikusroads.white_lane.4.name=Scritta prefabbricata: Lane (grande) -tile.furenikusroads.white_keep.0.name=Scritta prefabbricata: Keep (piccola) -tile.furenikusroads.white_keep.4.name=Scritta prefabbricata: Keep (grande) -tile.furenikusroads.white_clear.0.name=Scritta prefabbricata: Clear (piccola) -tile.furenikusroads.white_clear.4.name=Scritta prefabbricata: Clear (grande) -tile.furenikusroads.white_turn.0.name=Scritta prefabbricata: Turn (piccola) -tile.furenikusroads.white_turn.4.name=Scritta prefabbricata: Turn (grande) -tile.furenikusroads.white_left.0.name=Scritta prefabbricata: Left (piccola) -tile.furenikusroads.white_left.4.name=Scritta prefabbricata: Left (grande) -tile.furenikusroads.white_right.0.name=Scritta prefabbricata: Right (piccola) -tile.furenikusroads.white_right.4.name=Scritta prefabbricata: Right (grande) -tile.furenikusroads.white_only.0.name=Scritta prefabbricata: Only (piccola) -tile.furenikusroads.white_only.4.name=Scritta prefabbricata: Only (grande) -tile.furenikusroads.white_no.0.name=Scritta prefabbricata: No (piccola) -tile.furenikusroads.white_no.4.name=Scritta prefabbricata: No (grande) -tile.furenikusroads.white_entry.0.name=Scritta prefabbricata: Entry (piccola) -tile.furenikusroads.white_entry.4.name=Scritta prefabbricata: Entry (grande) -tile.furenikusroads.white_town.0.name=Scritta Prefabbricata: Town (piccola) -tile.furenikusroads.white_town.4.name=Scritta Prefabbricata: Town (grande) -tile.furenikusroads.white_city.0.name=Scritta prefabbricata: City (piccola) -tile.furenikusroads.white_city.4.name=Scritta prefabbricata: City (grande) -tile.furenikusroads.white_ctre.0.name=Scritta prefabbricata: C'tre (piccola) -tile.furenikusroads.white_ctre.4.name=Scritta prefabbricata: C'tre (grande) -tile.furenikusroads.white_bike_icon.0.name=Ciclabile (piccola) -tile.furenikusroads.white_bike_icon.4.name=Ciclabile (grande) - -tile.furenikusroads.white_chevron_left_a.name=Chevron (sinistra) -tile.furenikusroads.white_chevron_mid.0.name=Chevron (centro) -tile.furenikusroads.white_chevron_mid.4.name=Chevron (centro) -tile.furenikusroads.white_chevron_right_a.name=Chevron (destra) -tile.furenikusroads.white_chevron_left_a_thin.name=Chevron (sinistra, sottile) -tile.furenikusroads.white_chevron_mid.8.name=Chevron (centro, sottile) -tile.furenikusroads.white_chevron_mid.12.name=Chevron (centro, sottile) -tile.furenikusroads.white_chevron_right_a_thin.name=Chevron (destra, sottile) -tile.furenikusroads.white_junction_filter_left.name=Filtro corsia (sinistra) -tile.furenikusroads.white_junction_filter_right.name=Filtro corsia (destra) -tile.furenikusroads.white_junction_filter_left_thin.name=Filtro corsia (sinistra, sottile) -tile.furenikusroads.white_junction_filter_right_thin.name=Filtro corsia (destra, sottile) -tile.furenikusroads.white_junction_filter_left_empty.name=Filtro corsia (sinistra, nascosto) -tile.furenikusroads.white_junction_filter_right_empty.name=Filtro corsia (destra, nascosto) -tile.furenikusroads.white_chevron_mid_right.0.name=Divisorio centrale (centro, destra) -tile.furenikusroads.white_chevron_mid_right.4.name=Divisorio centrale (centro, destra) -tile.furenikusroads.white_chevron_mid_left.0.name=Divisorio centrale (centro, sinistra) -tile.furenikusroads.white_chevron_mid_left.4.name=Divisorio centrale (centro, sinistra) -tile.furenikusroads.white_chevron_mid_right.8.name=Divisorio centrale (centro, destra, sottile) -tile.furenikusroads.white_chevron_mid_right.12.name=Divisorio centrale (centro, destra, sottile) -tile.furenikusroads.white_chevron_mid_left.8.name=Divisorio centrale (centro, sinistra, sottile) -tile.furenikusroads.white_chevron_mid_left.12.name=Divisorio centrale (centro, sinistra, sottile) -tile.furenikusroads.white_chevron_side_line.name=Divisorio centrale (intero) -tile.furenikusroads.white_junction_fork_mid.0.name=Forcella di giunzione -tile.furenikusroads.white_junction_fork_mid_thin.0.name=Forcella di giunzione (sottile) -tile.furenikusroads.white_junction_fork_chevron_mid_thin.0.name=Forcella di giunzione (chevron, sottile) -tile.furenikusroads.white_junction_fork_chevron_mid.0.name=Forcella di giunzione (chevron) -tile.furenikusroads.white_junction_side_line_connection.0.name=Filtro corsia sottile -> Linea inversa spessa continua -tile.furenikusroads.white_junction_side_line_connection.4.name=Filtro corsia sottile -> Linea inversa spessa -tile.furenikusroads.white_junction_side_line_connection.8.name=Filtro corsia sottile -> Linea dritta spessa continua -tile.furenikusroads.white_junction_side_line_connection.12.name=Filtro corsia sottile -> Linea dritta spessa -tile.furenikusroads.white_junction_side_line_connection_thin.0.name=Filtro corsia sottile -> Linea inversa sottile continua -tile.furenikusroads.white_junction_side_line_connection_thin.4.name=Filtro corsia sottile -> Linea inversa sottile -tile.furenikusroads.white_junction_side_line_connection_thin.8.name=Filtro corsia sottile -> Linea dritta sottile continua -tile.furenikusroads.white_junction_side_line_connection_thin.12.name=Filtro corsia sottile -> Linea dritta sottile -tile.furenikusroads.white_junction_side_line_connection_thick_thick.0.name=Filtro corsia spesso -> Linea inversa spessa continua -tile.furenikusroads.white_junction_side_line_connection_thick_thick.4.name=Filtro corsia spesso -> Linea inversa spessa -tile.furenikusroads.white_junction_side_line_connection_thick_thick.8.name=Filtro corsia spesso -> Linea dritta spessa continua -tile.furenikusroads.white_junction_side_line_connection_thick_thick.12.name=Filtro corsia spesso -> Linea dritta spessa -tile.furenikusroads.white_junction_mid_line_connection.0.name=Linea centrale sottile a filtro corsia a sinistra spesso -tile.furenikusroads.white_junction_mid_line_connection.4.name=Linea centrale sottile a filtro corsia a destra spesso -tile.furenikusroads.white_junction_mid_line_connection.8.name=Linea centrale spessa a filtro corsia a sinistra sottile -tile.furenikusroads.white_junction_mid_line_connection.12.name=Linea centrale spessa a filtro corsia a destra sottile - - -tile.furenikusroads.yellow_junction_filter_left.name=§eFiltro corsia (sinistra) -tile.furenikusroads.yellow_junction_filter_right.name=§eFiltro corsia (destra) -tile.furenikusroads.yellow_junction_filter_left_thin.name=§eFiltro corsia (sinistra, sottile) -tile.furenikusroads.yellow_junction_filter_right_thin.name=§eFiltro corsia (destra, sottile) -tile.furenikusroads.yellow_junction_filter_left_empty.name=§eFiltro corsia (sinistra, nascosto) -tile.furenikusroads.yellow_junction_filter_right_empty.name=§eFiltro corsia (destra, nascosto) -tile.furenikusroads.yellow_chevron_left_a.name=§eChevron (sinistra) -tile.furenikusroads.yellow_chevron_right_a.name=§eChevron (destra) -tile.furenikusroads.yellow_chevron_left_a_thin.name=§eChevron (sinistra, sottile) -tile.furenikusroads.yellow_chevron_right_a_thin.name=§eChevron (destra, sottile) -tile.furenikusroads.yellow_chevron_side_line.name=§eDivisorio centrale (intero) -tile.furenikusroads.yellow_box_white.name=§eScatola da cova -tile.furenikusroads.yellow_crossing_paint.name=§ePassaggio pedonale - -tile.furenikusroads.red_junction_filter_left.name=§cFiltro corsia (sinistra) -tile.furenikusroads.red_junction_filter_right.name=§cFiltro corsia (destra) -tile.furenikusroads.red_junction_filter_left_thin.name=§cFiltro corsia (sinistra, sottile) -tile.furenikusroads.red_junction_filter_right_thin.name=§cFiltro corsia (destra, sottile) -tile.furenikusroads.red_junction_filter_left_empty.name=§cFiltro corsia (sinistra, nascosto) -tile.furenikusroads.red_junction_filter_right_empty.name=§cFiltro corsia (destra, nascosto) -tile.furenikusroads.red_chevron_left_a.name=§cChevron (sinistra) -tile.furenikusroads.red_chevron_right_a.name=§cChevron (destra) -tile.furenikusroads.red_chevron_left_a_thin.name=§cChevron (sinistra, sottile) -tile.furenikusroads.red_chevron_right_a_thin.name=§cChevron (destra, sottile) -tile.furenikusroads.red_chevron_side_line.name=§cDivisorio centrale (intero) -tile.furenikusroads.hatch_box_red.name=§cScatola da cova -tile.furenikusroads.red_crossing_paint.name=§cPassaggio pedonale - -tile.furenikusroads.road_snow.name=Neve (la magica neve che si attacca sulla strada) - -tile.furenikusroads.road_block_diagonal_1_1.name=Connettore diagonale (1/1) -tile.furenikusroads.road_block_diagonal_1_2.name=Connettore diagonale (1/2) -tile.furenikusroads.road_block_diagonal_1_4.name=Connettore diagonale (1/4) -tile.furenikusroads.road_block_diagonal_2_4.name=Connettore diagonale (2/4) -tile.furenikusroads.road_block_diagonal_1_8.name=Connettore diagonale(1/8) -tile.furenikusroads.road_block_diagonal_2_8.name=Connettore diagonale (2/8) -tile.furenikusroads.road_block_diagonal_3_8.name=Connettore diagonale (3/8) -tile.furenikusroads.road_block_diagonal_4_8.name=Connettore diagonale (4/8) - -tile.furenikusroads.road_block_diagonal_1_1_mirror.name=Connettore diagonale (1/1 rispecchiato) -tile.furenikusroads.road_block_diagonal_1_2_mirror.name=Connettore diagonale (1/2 rispecchiato) -tile.furenikusroads.road_block_diagonal_1_4_mirror.name=Connettore diagonale (1/4 rispecchiato) -tile.furenikusroads.road_block_diagonal_2_4_mirror.name=Connettore diagonale (2/4 rispecchiato) -tile.furenikusroads.road_block_diagonal_1_8_mirror.name=Connettore diagonale (1/8 rispecchiato) -tile.furenikusroads.road_block_diagonal_2_8_mirror.name=Connettore diagonale (2/8 rispecchiato) -tile.furenikusroads.road_block_diagonal_3_8_mirror.name=Connettore diagonale (3/8 rispecchiato) -tile.furenikusroads.road_block_diagonal_4_8_mirror.name=Connettore diagonale (4/8 rispecchiato) - -item.pneumatic_drill.name=Martello pneumatico -item.tarmac_rammer.name=Costipatore per asfalto -item.paint_gun.name=Pistola a vernice -item.paint_scraper.name=Raschietto per vernice -item.wrench.name=Chiave inglese - -item.pneumatic_drill_bit.name=Pezzo di martello pneumatico -item.machine_frame.name=Telaio della macchina -item.machine_frame_electric.name=Telaio della macchina elettrica -item.tool_handle.name=Manico dello strumento -item.large_glass_tank.name=Cisterna grande in vetro -item.small_glass_tank.name=Cisterna piccola in vetro -item.paint_gun_barrel.name=Canna della pistola a vernice -item.paint_gun_display.name=Display della pistola a vernice -item.coal_coke.name=Carbone secco -item.cement_dust.name=Polvere di cemento -item.limestone_dust.name=Polvere di calcare -item.clinker_mix.name=Miscela di clinker - -item.tooltip.pneumatic_drill=Usato per distruggere blocchi di asfalto. Anche in grado di ridurre l'altezza di 1/16 (click sinistro.) -item.tooltip.paint_gun_1=Creare vernici nel mondo! -item.tooltip.paint_gun_2=Shift + click sinistro per aprire l'interfaccia. -item.tooltip.paint_gun.selection=Selezione: -item.tooltip.paint_gun.colour=Colore: -item.tooltip.paint_gun.white=Livello vernice bianca: -item.tooltip.paint_gun.yellow=Livello vernice gialla: -item.tooltip.paint_gun.red=Livello vernice rossa: -item.tooltip.tarmac_rammer_1=Usato per aumentare l'altezza dei blocchi -item.tooltip.tarmac_rammer_2=(click sinistro), richiede frammenti nell'inventario. -item.tooltip.wrench_1=Usata per fare minori aggiustamenti a certi blocchi. -item.tooltip.wrench_2=Click sinistro in aria per cambiare modalità. -item.tooltip.wrench_3=Current mode: - -colour.white=Bianca -colour.yellow=Gialla -colour.red=Rossa - -item.tooltip.more_info=Shift per ulteriori informazioni. - -item.tarmac_cutter_blade_1_iron.name=Taglierina per asfalto in ferro -item.tarmac_cutter_blade_1_gold.name=Taglierina per asfalto in oro -item.tarmac_cutter_blade_1_diamond.name=Taglierina per asfalto in diamante -item.tarmac_cutter_blade_2_iron.name=Taglierina per asfalto in ferro -item.tarmac_cutter_blade_2_gold.name=Taglierina per asfalto in oro -item.tarmac_cutter_blade_2_diamond.name=Taglierina per asfalto in diamante -item.tarmac_cutter_blade_4_iron.name=Taglierina per asfalto in ferro -item.tarmac_cutter_blade_4_gold.name=Taglierina per asfalto in oro -item.tarmac_cutter_blade_4_diamond.name=Taglierina per asfalto in diamante -item.tarmac_cutter_blade_8_iron.name=Taglierina per asfalto in ferro -item.tarmac_cutter_blade_8_gold.name=Taglierina per asfalto in oro -item.tarmac_cutter_blade_8_diamond.name=Taglierina per asfalto in diamante - -item.tarmac_fragment_standard.name=Frammento di asfalto standard -item.tarmac_fragment_concrete_1.name=Frammento di calcestruzzo -item.tarmac_fragment_concrete_2.name=Frammento di calcestruzzo -item.tarmac_fragment_light.name=Frammento di asfalto chiaro -item.tarmac_fragment_fine.name=Frammento di asfalto fine -item.tarmac_fragment_dark.name=Frammento di asfalto scuro -item.tarmac_fragment_pale.name=Frammento di asfalto pallido -item.tarmac_fragment_red.name=Frammento di asfalto rosso -item.tarmac_fragment_blue.name=Frammento di asfalto blu -item.tarmac_fragment_white.name=Frammento di asfalto bianco -item.tarmac_fragment_yellow.name=Frammento di asfalto giallo -item.tarmac_fragment_green.name=Frammento di asfalto verde -item.tarmac_fragment_muddy.name=Frammento di fango - -item.tarmac_fragment_stone.name=Frammento di pietra -item.tarmac_fragment_grass.name=Frammento di erba -item.tarmac_fragment_dirt.name=Frammento di terra -item.tarmac_fragment_gravel.name=Frammento di chiaia -item.tarmac_fragment_sand.name=Frammento di sabbia - -item.sidewalk_fragment_standard.name=Frammento di marciapiede -item.sidewalk_fragment_clean.name=Frammento di marciapiede chiaro -item.sidewalk_fragment_dark.name=Frammento di marciapiede scuro -item.sidewalk_fragment_tan.name=Frammento di marciapiede abbronzato - -fluid.white_paint=Vernice bianca -fluid.yellow_paint=Vernice gialla -fluid.red_paint=Vernice rossa -fluid.tar=Asfalto - -itemGroup.tab_roads=[Fureniku's Roads] Asfalti -itemGroup.tab_sidewalks=[Fureniku's Roads] Marciapiedi -itemGroup.tab_tools=[Fureniku's Roads] Strumenti -itemGroup.tab_road_parts=[Fureniku's Roads] Oggetti stradali -itemGroup.tab_diagonals=[Fureniku's Roads] Connettori diagonali -itemGroup.tab_paint_lines=[Fureniku's Roads] Linee semplici -itemGroup.tab_paint_icons=[Fureniku's Roads] Icone -itemGroup.tab_paint_letters=[Fureniku's Roads] Lettere e numeri -itemGroup.tab_paint_text=[Fureniku's Roads] Scritte prefabbricate -itemGroup.tab_paint_junction=[Fureniku's Roads] Linee di giunzione -itemGroup.tab_paint_customs=[Fureniku's Roads] Pitture personalizzate - -roads.gui.inputSlot=Ingresso -roads.gui.outputSlot=Uscita -roads.gui.fuelSlot=Combustibile -roads.gui.tarInputSlot=Ingresso secchio di asfalto -roads.gui.tarOutputSlot=Uscita secchio di asfalto -roads.gui.fluidInputSlot=Ingresso fluido -roads.gui.fluidOutputSlot=Uscita fluido -roads.gui.bucketInputSlot=Secchio vuoto -roads.gui.bucketOutputSlot=Secchio vuoto da fluido -roads.gui.valid=Ricette valide: -roads.gui.unused=Attualmente non utilizzato -roads.gui.road_generic_name=Blocco di asfalto -roads.gui.road_generic_name_cut=Blocco di asfalto (tagliato) -roads.gui.fragment_generic_name=Frammenti di asfalto - -roads.gui.electric_crusher.name=Frantoio -roads.gui.crusher.name=Frantoio -roads.gui.crusher.tooltip_1=Frantumare blocchi per creare altri tipi di blocchi! - -roads.gui.electric_road_factory.name=Fabbrica stradale -roads.gui.road_factory.name=Fabbrica stradale -roads.gui.road_factory.connect_pass=Distillatore di asfalto connesso -roads.gui.road_factory.connect_failed_1=Distillatore di asfalto non trovato. -roads.gui.road_factory.connect_failed_2=Posizionare il distillatore di asfalto a sinistra -roads.gui.road_factory.connect_failed_3=o aggiungere manualmente l'asfalto. -roads.gui.road_factory.link=Connesione -roads.gui.road_factory.tooltip_1=Creare blocchi dal loro blocco di base. -roads.gui.road_factory.tooltip_2=Suggerimento: posizionarlo a destra del distillatore di asfalto! -roads.gui.road_factory.modifierSlot=Slot per modificatore -roads.gui.road_factory.tar_required=Tutte le ricette richiedono 1000mb di asfalto per 8 blocchi. -roads.gui.road_factory.modifierSlot.tooltip_1=Usare l'asfalto standard o roccia frantumata e asfalto insieme -roads.gui.road_factory.modifierSlot.tooltip_2=ad un colorante per creare gli asfalti colorati. -roads.gui.road_factory.modifierSlot.red_dye=Colorante rosso -roads.gui.road_factory.modifierSlot.blue_dye=Colorante blu -roads.gui.road_factory.modifierSlot.yellow_dye=Colorante giallo -roads.gui.road_factory.modifierSlot.green_dye=Colorante verde -roads.gui.road_factory.modifierSlot.white_dye=Colorante bianco - -roads.gui.electric_tar_distiller.name=Distillatore di asfalto -roads.gui.tar_distiller.name=Distillatore di asfalto -roads.gui.tar_distiller.tooltip_1=Creare asfalto dai materiali immessi. -roads.gui.tar_distiller.tooltip_2=Attualmente accetta solo carbone. Usare la lava come combustibile. - -roads.gui.electric_tarmac_cutter.name=Taglierina per asfalto -roads.gui.tarmac_cutter.name=Taglierina per asfalto -roads.gui.tarmac_cutter.bladeSlot=Lama taglierina -roads.gui.tarmac_cutter.tooltip_1=Tagliare l'asfalto in fette ridimensionate. -roads.gui.tarmac_cutter.tooltip_2=Usare le taglierine per asfalto a seconda della misura desiderata. - -roads.gui.electric_paint_filler.name=Riempitore di vernice -roads.gui.paint_filler.name=Riempitore di vernice -roads.gui.paint_filler.paint_gun_slot=Montatura per pistola a vernice -roads.gui.paint_filler.white_slot=Convertitore di colorante bianco -roads.gui.paint_filler.yellow_slot=Convertitore di colorante giallo -roads.gui.paint_filler.red_slot=Convertitore di colorante rosso -roads.gui.paint_filler.tooltip_1=Usato per creare la vernice, poi per riempire la pistola a vernice. -roads.gui.paint_filler.tooltip_2=Combustibile, poi aggiungere colorante bianco, giallo o rosso per iniziare! - -roads.gui.paint_filler_hopper.tooltip_1=Consente il pompaggio di oggetti e vernici all'interno e all'esterno del riempitore di vernice. - -roads.gui.paint_oven.dye_slot=Colorante -roads.gui.paint_oven.tooltip_1=Mischiare i coloranti con acqua per prodotti di vernice più elevati. -roads.gui.paint_oven.tooltip_2=Richiede un modo per trasportare la vernice! - -roads.gui.compactor.name=Compattatore -roads.gui.compactor_electric.name=Compattatore -roads.gui.compactor.fragmentSlot=Frammenti di asfalto -roads.gui.compactor.size=Dimensione da comprimere a -roads.gui.compactor.tooltip_1=Compattare frammenti di strada per creare nuovi blocchi di asfalto. - -roads.gui.fabricator.name=Fabbricatore -roads.gui.electric_fabricator.name=Fabbricatore -roads.gui.fabricator.requirement=Richiede: -roads.gui.fabricator.recipe_select=Click per selezionare la ricetta -roads.gui.fabricator.tooltip_1=Creare blocchi decorativi per abbellire le proprie strade! diff --git a/src/main/resources/assets/furenikusroads/lang/zh_cn.lang b/src/main/resources/assets/furenikusroads/lang/zh_cn.lang deleted file mode 100644 index 93df1870..00000000 --- a/src/main/resources/assets/furenikusroads/lang/zh_cn.lang +++ /dev/null @@ -1,613 +0,0 @@ -tile.furenikusroads.road_block_standard.name=标准路块 -tile.furenikusroads.road_block_concrete_1.name=混泥土路块 -tile.furenikusroads.road_block_concrete_2.name=混泥土路块 -tile.furenikusroads.road_block_light.name=光亮柏油路 -tile.furenikusroads.road_block_dark.name=暗色泊油路 -tile.furenikusroads.road_block_pale.name=灰白油路 -tile.furenikusroads.road_block_red.name=红色泊油路 -tile.furenikusroads.road_block_blue.name=蓝色泊油路 -tile.furenikusroads.road_block_white.name=白色泊油路 -tile.furenikusroads.road_block_yellow.name=黄色泊油路 -tile.furenikusroads.road_block_green.name=绿色泊油路 -tile.furenikusroads.road_block_fine.name=高级泊油路 -tile.furenikusroads.road_block_muddy.name=泥土路 -tile.furenikusroads.road_block_muddy_dried.name=干燥泥土路 - -tile.furenikusroads.road_block_stone.name=石头路 -tile.furenikusroads.road_block_grass.name=草地路 -tile.furenikusroads.road_block_dirt.name=烂泥路 -tile.furenikusroads.road_block_sand.name=砂石路 -tile.furenikusroads.road_block_gravel.name=碎石路 - -tile.furenikusroads.sidewalk.name=人行道 -tile.furenikusroads.sidewalk_clean.name=干净的人行道 -tile.furenikusroads.sidewalk_dark.name=黑色的人行道 -tile.furenikusroads.sidewalk_tan.name=棕色人行道 - -tile.furenikusroads.paint_filler.name=油漆填充 -tile.furenikusroads.tar_distiller.name=焦油提取器 -tile.furenikusroads.road_factory.name=道路工厂 -tile.furenikusroads.tarmac_cutter.name=柏油碎石机 -tile.furenikusroads.crusher.name=碎石机 - -tile.furenikusroads.kerb_standard.0.name=路障(未上漆) -tile.furenikusroads.kerb_standard.4.name=路障(白漆) -tile.furenikusroads.kerb_standard.8.name=路障(黄漆) -tile.furenikusroads.kerb_standard.12.name=路障(红漆) - -tile.furenikusroads.tactile_crossing_bumps.name=盲道 -tile.furenikusroads.manhole_cover_round.name=井盖 -tile.furenikusroads.manhole_cover_square.name=井盖 - -tile.furenikusroads.street_light_1.name=路灯 - -tile.furenikusroads.post_large_vertical.name=邮箱(大) -tile.furenikusroads.post_medium_vertical.name=邮箱(中) -tile.furenikusroads.post_small_vertical.name=邮箱(小) -tile.furenikusroads.post_large_horizontal.name=横杆(大) -tile.furenikusroads.post_medium_horizontal.name=横杆(中) -tile.furenikusroads.post_small_horizontal.name=横杆(小) - -tile.furenikusroads.barrier_standard_mid.name=马路防护栏杆(中) -tile.furenikusroads.barrier_standard_side.name=马路防护栏杆(大) -tile.furenikusroads.barrier_end.0.name=马路防护栏杆(终点) - -tile.furenikusroads.cats_eye_white.name=白色反光地标 -tile.furenikusroads.cats_eye_yellow.name=黄色反光地标 -tile.furenikusroads.cats_eye_red.name=红色反光地标 -tile.furenikusroads.cats_eye_green.name=绿色反光地标 -tile.furenikusroads.cats_eye_white_double.name=白色反光地标(双行) -tile.furenikusroads.cats_eye_yellow_double.name=黄色反光地标(双行) -tile.furenikusroads.cats_eye_red_double.name=红色反光地标(双行) -tile.furenikusroads.cats_eye_green_double.name=绿色反光地标(双行) - -tile.furenikusroads.street_block_a.0.name=石砖人行道(砖) -tile.furenikusroads.street_block_a.1.name=石砖人行道(交叉砖) -tile.furenikusroads.street_block_a.2.name=石砖人行道(小砖) -tile.furenikusroads.street_block_a.3.name=石砖人行道(中砖) -tile.furenikusroads.street_block_a.4.name=石砖人行道(石砖块) -tile.furenikusroads.street_block_a.5.name=石砖人行道(大砖) -tile.furenikusroads.street_block_a.6.name=石砖人行道(水平) -tile.furenikusroads.street_block_a.7.name=石砖石砖人行道(垂直) -tile.furenikusroads.street_block_a.8.name=人行道(石砖) -tile.furenikusroads.street_block_a.9.name=沙砖人行道(十字砖) -tile.furenikusroads.street_block_a.10.name=沙砖人行道(小) -tile.furenikusroads.street_block_a.11.name=沙砖人行道 (中) -tile.furenikusroads.street_block_a.12.name=沙砖人行道 (大) -tile.furenikusroads.street_block_a.13.name=沙砖人行道(大砖) -tile.furenikusroads.street_block_a.14.name=沙砖人行道 (水平) -tile.furenikusroads.street_block_a.15.name=沙砖人行道 (垂直) - -tile.furenikusroads.street_block_b.0.name=干净的人行道 (砖) -tile.furenikusroads.street_block_b.1.name=干净的人行道 (交叉砖) -tile.furenikusroads.street_block_b.2.name=干净的人行道 (小地砖) -tile.furenikusroads.street_block_b.3.name=干净的人行道 (中地砖) -tile.furenikusroads.street_block_b.4.name=干净的人行道 (大地砖) -tile.furenikusroads.street_block_b.5.name=干净的人行道 (大砖) -tile.furenikusroads.street_block_b.6.name=干净的人行道 (水平) -tile.furenikusroads.street_block_b.7.name=干净的人行道 (垂直) -tile.furenikusroads.street_block_b.8.name=暗色的人行道 (砖) -tile.furenikusroads.street_block_b.9.name=暗色的人行道 (交叉砖) -tile.furenikusroads.street_block_b.10.name=暗色的人行道 (小地砖) -tile.furenikusroads.street_block_b.11.name=暗色的人行道 (中地砖) -tile.furenikusroads.street_block_b.12.name=暗色的人行道 (大地砖) -tile.furenikusroads.street_block_b.13.name=暗色的人行道 (大砖) -tile.furenikusroads.street_block_b.14.name=暗色的人行道 (水平) -tile.furenikusroads.street_block_b.15.name=暗色的人行道 (垂直) - -tile.furenikusroads.generic_blocks.0.name=碎石 -tile.furenikusroads.generic_blocks.1.name=渣块 -tile.furenikusroads.generic_blocks.2.name=水泥 -tile.furenikusroads.generic_blocks.3.name=石灰石 - -tile.furenikusroads.line_white_straight_full.0.name=直线 -tile.furenikusroads.line_white_straight_full.2.name=直线 (连续) -tile.furenikusroads.line_white_straight_thick.0.name=粗直线 -tile.furenikusroads.line_white_straight_thick.2.name=粗直线 (连续) -tile.furenikusroads.line_white_straight_double.0.name=双直线 -tile.furenikusroads.line_white_straight_double.2.name=双直线 (连续) -tile.furenikusroads.line_white_straight_double_thick.0.name=粗双直线 -tile.furenikusroads.line_white_straight_double_thick.2.name=粗双直线 (连续) -tile.furenikusroads.line_white_side_double.0.name=双侧线 -tile.furenikusroads.line_white_side_double_thick.0.name=粗双侧线 -tile.furenikusroads.line_white_side_single.0.name=侧线 -tile.furenikusroads.line_white_side_single_thick.0.name=粗侧线 -tile.furenikusroads.line_white_far_side.0.name=边 侧线 -tile.furenikusroads.line_white_far_side_thick.0.name=粗边 侧线 -tile.furenikusroads.line_white_middle_half_double.name=双直线 (一半) -tile.furenikusroads.line_white_middle_dash_double.name=双直线 (虚线) -tile.furenikusroads.line_white_middle_short.name=短直线 -tile.furenikusroads.line_white_filter_lane.name=粗短直线 -tile.furenikusroads.line_white_side_short.name=短边线 - -tile.furenikusroads.white_wheelchair_icon.name=残疾人标志 -tile.furenikusroads.white_chevron.name=V行标志 -tile.furenikusroads.white_pedestrian.name=行人标志 -tile.furenikusroads.white_merge_arrow.name=合并箭头标志 -tile.furenikusroads.white_give_way.name=让路标志 -tile.furenikusroads.white_arrow_line.0.name=箭头(线) -tile.furenikusroads.white_arrow.0.name=箭头 (向前) -tile.furenikusroads.white_arrow.4.name=箭头 (侧面) -tile.furenikusroads.white_arrow_diagonal.4.name=箭头 (对角线) -tile.furenikusroads.white_arrow_diagonal.0.name=箭头 (对角线) -tile.furenikusroads.white_crossing_paint.name=人行横道 -tile.furenikusroads.line_white_thin_crossing.name=人行横道 (细) -tile.furenikusroads.line_white_crossing_diagonal.name=十字 线 -tile.furenikusroads.white_junction_a.0.name=交叉 进入 右侧 -tile.furenikusroads.white_junction_a.4.name=交叉 进入 左侧 -tile.furenikusroads.white_junction_a.8.name=交叉 进入 右侧 中间 -tile.furenikusroads.white_junction_b.0.name=交叉 进入 左侧 -tile.furenikusroads.white_junction_b.4.name=交叉 进入 右侧 -tile.furenikusroads.white_junction_b.8.name=交叉 进入 左侧 中间 -tile.furenikusroads.hatch_box_white.name=填充盒子 - -tile.furenikusroads.paint_letter_white_ab.0.name=字母A -tile.furenikusroads.paint_letter_white_ab.8.name=字母B -tile.furenikusroads.paint_letter_white_cd.0.name=字母C -tile.furenikusroads.paint_letter_white_cd.8.name=字母D -tile.furenikusroads.paint_letter_white_ef.0.name=字母E -tile.furenikusroads.paint_letter_white_ef.8.name=字母F -tile.furenikusroads.paint_letter_white_gh.0.name=字母G -tile.furenikusroads.paint_letter_white_gh.8.name=字母H -tile.furenikusroads.paint_letter_white_ij.0.name=字母I -tile.furenikusroads.paint_letter_white_ij.8.name=字母J -tile.furenikusroads.paint_letter_white_kl.0.name=字母K -tile.furenikusroads.paint_letter_white_kl.8.name=字母L -tile.furenikusroads.paint_letter_white_mn.0.name=字母M -tile.furenikusroads.paint_letter_white_mn.8.name=字母N -tile.furenikusroads.paint_letter_white_op.0.name=字母O -tile.furenikusroads.paint_letter_white_op.8.name=字母P -tile.furenikusroads.paint_letter_white_qr.0.name=字母Q -tile.furenikusroads.paint_letter_white_qr.8.name=字母R -tile.furenikusroads.paint_letter_white_st.0.name=字母S -tile.furenikusroads.paint_letter_white_st.8.name=字母T -tile.furenikusroads.paint_letter_white_uv.0.name=字母U -tile.furenikusroads.paint_letter_white_uv.8.name=字母V -tile.furenikusroads.paint_letter_white_wx.0.name=字母W -tile.furenikusroads.paint_letter_white_wx.8.name=字母X -tile.furenikusroads.paint_letter_white_yz.0.name=字母Y -tile.furenikusroads.paint_letter_white_yz.8.name=字母Z -tile.furenikusroads.paint_letter_white_01.0.name=数字 0 -tile.furenikusroads.paint_letter_white_01.8.name=数字 1 -tile.furenikusroads.paint_letter_white_23.0.name=数字 2 -tile.furenikusroads.paint_letter_white_23.8.name=数字 3 -tile.furenikusroads.paint_letter_white_45.0.name=数字 4 -tile.furenikusroads.paint_letter_white_45.8.name=数字 5 -tile.furenikusroads.paint_letter_white_67.0.name=数字 6 -tile.furenikusroads.paint_letter_white_67.8.name=数字 7 -tile.furenikusroads.paint_letter_white_89.0.name=数字 8 -tile.furenikusroads.paint_letter_white_89.8.name=数字 9 -tile.furenikusroads.paint_letter_white_punct_question_exclamation.0.name=? -tile.furenikusroads.paint_letter_white_punct_question_exclamation.8.name=! -tile.furenikusroads.paint_letter_white_punct_hash_slash.0.name=# -tile.furenikusroads.paint_letter_white_punct_hash_slash.8.name=/ - -tile.furenikusroads.white_slow.name=Prefab Text: 慢行 -tile.furenikusroads.white_stop.name=Prefab Text: 停止 -tile.furenikusroads.white_bike.name=Prefab Text: 自行车 -tile.furenikusroads.white_bus.name=Prefab Text: 巴士 -tile.furenikusroads.white_taxi.name=Prefab Text: 出租车 -tile.furenikusroads.white_lane.name=Prefab Text: 车道 -tile.furenikusroads.white_keep.name=Prefab Text: 主道 -tile.furenikusroads.white_clear.name=Prefab Text: 干净 -tile.furenikusroads.white_turn.name=Prefab Text: 转弯 -tile.furenikusroads.white_left.name=Prefab Text: 左侧 -tile.furenikusroads.white_right.name=Prefab Text: 右侧 -tile.furenikusroads.white_only.name=Prefab Text: 唯一 -tile.furenikusroads.white_no.name=Prefab Text: 不 -tile.furenikusroads.white_entry.name=Prefab Text: 入口 -tile.furenikusroads.white_town.name=Prefab Text: 镇子 -tile.furenikusroads.white_city.name=Prefab Text: 城市 -tile.furenikusroads.white_ctre.name=Prefab Text: C'tre -tile.furenikusroads.white_bike_icon.name=自行车标志 - -tile.furenikusroads.white_chevron_left_a.name=V行线条 (左侧) -tile.furenikusroads.white_chevron_mid.0.name=V行线条 (中间) -tile.furenikusroads.white_chevron_mid.4.name=V行线条 (中间) -tile.furenikusroads.white_chevron_right_a.name=V行线条 (右侧) -tile.furenikusroads.white_chevron_left_a_thin.name=V行线条 (左侧, 细) -tile.furenikusroads.white_chevron_mid.8.name=V行线条 (中间, 细) -tile.furenikusroads.white_chevron_mid.12.name=V行线条 (中间, 细) -tile.furenikusroads.white_chevron_right_a_thin.name=V行线条 (右侧, 细) -tile.furenikusroads.white_junction_filter_left.name=过滤 车道 (左侧) -tile.furenikusroads.white_junction_filter_right.name=过滤 车道 (右侧) -tile.furenikusroads.white_junction_filter_left_thin.name=过滤 车道 (左侧, 细) -tile.furenikusroads.white_junction_filter_right_thin.name=过滤 车道 (右侧, 细) -tile.furenikusroads.white_junction_filter_left_empty.name=过滤 车道 (左侧, 隐藏) -tile.furenikusroads.white_junction_filter_right_empty.name=过滤 车道 (右侧, 隐藏) -tile.furenikusroads.white_chevron_mid_right.0.name=Central Divider (一半, 右侧) -tile.furenikusroads.white_chevron_mid_right.4.name=Central Divider (一半, 右侧) -tile.furenikusroads.white_chevron_mid_left.0.name=Central Divider (一半, 左侧) -tile.furenikusroads.white_chevron_mid_left.4.name=Central Divider (一半, 左侧) -tile.furenikusroads.white_chevron_mid_right.8.name=Central Divider (一半, 右侧, 细) -tile.furenikusroads.white_chevron_mid_right.12.name=Central Divider (一半, 右侧, 细) -tile.furenikusroads.white_chevron_mid_left.8.name=Central Divider (一半, 左侧, 细) -tile.furenikusroads.white_chevron_mid_left.12.name=Central Divider (一半, 左侧, 细) -tile.furenikusroads.white_chevron_side_line.name=中央分隔器(满) -tile.furenikusroads.white_junction_fork_mid.name=交叉 分岔 -tile.furenikusroads.white_junction_fork_mid_thin.name=交叉 分岔 (细) -tile.furenikusroads.white_junction_fork_chevron_mid_thin.name=交叉 分岔 (V行线条, 细) -tile.furenikusroads.white_junction_fork_chevron_mid.name=交叉 分岔 (V行线条) -tile.furenikusroads.white_junction_side_line_connection.0.name=过滤 车道 细->粗L 背面 连续 -tile.furenikusroads.white_junction_side_line_connection.4.name=过滤 车道 细->粗L 背面 -tile.furenikusroads.white_junction_side_line_connection.8.name=过滤 车道 细->粗L 向前 连续 -tile.furenikusroads.white_junction_side_line_connection.12.name=过滤 车道 细->粗L 向前 -tile.furenikusroads.white_junction_side_line_connection_thin.0.name=过滤 车道 细->细 L 背面 连续 -tile.furenikusroads.white_junction_side_line_connection_thin.4.name=过滤 车道 细->细 L 背面 -tile.furenikusroads.white_junction_side_line_connection_thin.8.name=过滤 车道 细->细 L 向前 连续 -tile.furenikusroads.white_junction_side_line_connection_thin.12.name=过滤 车道 细->细 L 向前 -tile.furenikusroads.white_junction_side_line_connection_thick_thick.0.name=过滤 车道 粗->粗L 背面 连续 -tile.furenikusroads.white_junction_side_line_connection_thick_thick.4.name=过滤 车道 粗->粗L 背面 -tile.furenikusroads.white_junction_side_line_connection_thick_thick.8.name=过滤 车道 粗->粗L 向前 连续 -tile.furenikusroads.white_junction_side_line_connection_thick_thick.12.name=过滤 车道 粗->粗L 向前 -tile.furenikusroads.white_junction_mid_line_connection.0.name=细 中间 线 > 粗过滤 线 L -tile.furenikusroads.white_junction_mid_line_connection.4.name=细 中间 线 > 粗过滤 线 R -tile.furenikusroads.white_junction_mid_line_connection.8.name=粗中间 线 > 粗过滤 线 R -tile.furenikusroads.white_junction_mid_line_connection.12.name=粗中间 线 > 粗过滤 线 R - - - -tile.furenikusroads.line_yellow_straight_full.0.name=直线 -tile.furenikusroads.line_yellow_straight_full.2.name=直线 (连续) -tile.furenikusroads.line_yellow_straight_thick.0.name=粗直线 -tile.furenikusroads.line_yellow_straight_thick.2.name=粗直线 (连续) -tile.furenikusroads.line_yellow_straight_double.0.name=双直线 -tile.furenikusroads.line_yellow_straight_double.2.name=双直线 (连续) -tile.furenikusroads.line_yellow_straight_double_thick.0.name=粗双直线 -tile.furenikusroads.line_yellow_straight_double_thick.2.name=粗双直线 (连续) -tile.furenikusroads.line_yellow_side_double.0.name=双侧线 -tile.furenikusroads.line_yellow_side_double_thick.0.name=粗双侧线 -tile.furenikusroads.line_yellow_side_single.0.name=侧线 -tile.furenikusroads.line_yellow_side_single_thick.0.name=粗侧线 -tile.furenikusroads.line_yellow_far_side.0.name=边 侧线 -tile.furenikusroads.line_yellow_far_side_thick.0.name=粗边 侧线 -tile.furenikusroads.line_yellow_middle_half_double.name=双直线 (一半) -tile.furenikusroads.line_yellow_middle_dash_double.name=双直线 (虚线) -tile.furenikusroads.line_yellow_middle_short.name=短直线 -tile.furenikusroads.line_yellow_filter_lane.name=粗短直线 -tile.furenikusroads.line_yellow_side_short.name=短边线 - -tile.furenikusroads.yellow_wheelchair_icon.name=残疾人标志 -tile.furenikusroads.yellow_chevron.name=V行图标 -tile.furenikusroads.yellow_pedestrian.name=行人图标 -tile.furenikusroads.yellow_merge_arrow.name=合并箭头图标 -tile.furenikusroads.yellow_give_way.name=让路图标 -tile.furenikusroads.yellow_arrow_line.0.name=箭头 (线) -tile.furenikusroads.yellow_arrow.0.name=箭头 (向前) -tile.furenikusroads.yellow_arrow.4.name=箭头 (三角) -tile.furenikusroads.yellow_arrow_diagonal.4.name=箭头 (对角线) -tile.furenikusroads.yellow_arrow_diagonal.0.name=箭头 (对角线) -tile.furenikusroads.yellow_crossing_paint.name=人行横道 -tile.furenikusroads.line_yellow_thin_crossing.name=人行横道 (细) -tile.furenikusroads.line_yellow_crossing_diagonal.name=交叉线 -tile.furenikusroads.yellow_junction_a.0.name=交叉路口进入右侧 -tile.furenikusroads.yellow_junction_a.4.name=路口出口左侧 -tile.furenikusroads.yellow_junction_a.8.name=交叉路口进入右中 -tile.furenikusroads.yellow_junction_b.0.name=交叉路口进入左侧 -tile.furenikusroads.yellow_junction_b.4.name=右交叉口出口 -tile.furenikusroads.yellow_junction_b.8.name=交叉路口进入左中 -tile.furenikusroads.hatch_box_yellow.name=填充盒子 - -tile.furenikusroads.paint_letter_yellow_ab.0.name=字母A -tile.furenikusroads.paint_letter_yellow_ab.8.name=字母B -tile.furenikusroads.paint_letter_yellow_cd.0.name=字母C -tile.furenikusroads.paint_letter_yellow_cd.8.name=字母D -tile.furenikusroads.paint_letter_yellow_ef.0.name=字母E -tile.furenikusroads.paint_letter_yellow_ef.8.name=字母F -tile.furenikusroads.paint_letter_yellow_gh.0.name=字母G -tile.furenikusroads.paint_letter_yellow_gh.8.name=字母H -tile.furenikusroads.paint_letter_yellow_ij.0.name=字母I -tile.furenikusroads.paint_letter_yellow_ij.8.name=字母J -tile.furenikusroads.paint_letter_yellow_kl.0.name=字母K -tile.furenikusroads.paint_letter_yellow_kl.8.name=字母L -tile.furenikusroads.paint_letter_yellow_mn.0.name=字母M -tile.furenikusroads.paint_letter_yellow_mn.8.name=字母N -tile.furenikusroads.paint_letter_yellow_op.0.name=字母O -tile.furenikusroads.paint_letter_yellow_op.8.name=字母P -tile.furenikusroads.paint_letter_yellow_qr.0.name=字母Q -tile.furenikusroads.paint_letter_yellow_qr.8.name=字母R -tile.furenikusroads.paint_letter_yellow_st.0.name=字母S -tile.furenikusroads.paint_letter_yellow_st.8.name=字母T -tile.furenikusroads.paint_letter_yellow_uv.0.name=字母U -tile.furenikusroads.paint_letter_yellow_uv.8.name=字母V -tile.furenikusroads.paint_letter_yellow_wx.0.name=字母W -tile.furenikusroads.paint_letter_yellow_wx.8.name=字母X -tile.furenikusroads.paint_letter_yellow_yz.0.name=字母Y -tile.furenikusroads.paint_letter_yellow_yz.8.name=字母Z -tile.furenikusroads.paint_letter_yellow_01.0.name=数字 0 -tile.furenikusroads.paint_letter_yellow_01.8.name=数字 1 -tile.furenikusroads.paint_letter_yellow_23.0.name=数字 2 -tile.furenikusroads.paint_letter_yellow_23.8.name=数字 3 -tile.furenikusroads.paint_letter_yellow_45.0.name=数字 4 -tile.furenikusroads.paint_letter_yellow_45.8.name=数字 5 -tile.furenikusroads.paint_letter_yellow_67.0.name=数字 6 -tile.furenikusroads.paint_letter_yellow_67.8.name=数字 7 -tile.furenikusroads.paint_letter_yellow_89.0.name=数字 8 -tile.furenikusroads.paint_letter_yellow_89.8.name=数字 9 -tile.furenikusroads.paint_letter_yellow_punct_question_exclamation.0.name=问号 -tile.furenikusroads.paint_letter_yellow_punct_question_exclamation.8.name=感叹号 -tile.furenikusroads.paint_letter_yellow_punct_hash_slash.0.name=#号 -tile.furenikusroads.paint_letter_yellow_punct_hash_slash.8.name=/号 - -tile.furenikusroads.yellow_slow.name=Prefab Text: 字母 -tile.furenikusroads.yellow_stop.name=Prefab Text: 停止 -tile.furenikusroads.yellow_bike.name=Prefab Text: 自行车 -tile.furenikusroads.yellow_bus.name=Prefab Text: 巴士 -tile.furenikusroads.yellow_taxi.name=Prefab Text: 出租车 -tile.furenikusroads.yellow_lane.name=Prefab Text: 车道 -tile.furenikusroads.yellow_keep.name=Prefab Text: 主道 -tile.furenikusroads.yellow_clear.name=Prefab Text: 干净 -tile.furenikusroads.yellow_turn.name=Prefab Text: 转弯 -tile.furenikusroads.yellow_left.name=Prefab Text: 向左 -tile.furenikusroads.yellow_right.name=Prefab Text: 向右 -tile.furenikusroads.yellow_only.name=Prefab Text: 唯一 -tile.furenikusroads.yellow_no.name=Prefab Text: 不 -tile.furenikusroads.yellow_entry.name=Prefab Text: 入口 -tile.furenikusroads.yellow_town.name=Prefab Text: 镇子 -tile.furenikusroads.yellow_city.name=Prefab Text: 城市 -tile.furenikusroads.yellow_ctre.name=Prefab Text: C'tre -tile.furenikusroads.yellow_bike_icon.name=自行车标志 - -tile.furenikusroads.yellow_chevron_left_a.name=V行线条 (左侧) -tile.furenikusroads.yellow_chevron_mid.0.name=V行线条 (中间) -tile.furenikusroads.yellow_chevron_mid.4.name=V行线条 (中间) -tile.furenikusroads.yellow_chevron_right_a.name=V行线条 (右侧) -tile.furenikusroads.yellow_chevron_left_a_thin.name=V行线条 (左侧, 细) -tile.furenikusroads.yellow_chevron_mid.8.name=V行线条 (中间, 细) -tile.furenikusroads.yellow_chevron_mid.12.name=V行线条 (中间, 细) -tile.furenikusroads.yellow_chevron_right_a_thin.name=V行线条 (右侧, 细) -tile.furenikusroads.yellow_junction_filter_left.name=过滤 车道 (左侧) -tile.furenikusroads.yellow_junction_filter_right.name=过滤 车道 (右侧) -tile.furenikusroads.yellow_junction_filter_left_thin.name=过滤 车道 (左侧, 细) -tile.furenikusroads.yellow_junction_filter_right_thin.name=过滤 车道 (右侧, 细) -tile.furenikusroads.yellow_junction_filter_left_empty.name=过滤 车道 (左侧, 隐藏) -tile.furenikusroads.yellow_junction_filter_right_empty.name=过滤 车道 (右侧, 隐藏) -tile.furenikusroads.yellow_chevron_mid_right.0.name=Central Divider (一半, 右侧) -tile.furenikusroads.yellow_chevron_mid_right.4.name=Central Divider (一半, 右侧) -tile.furenikusroads.yellow_chevron_mid_left.0.name=Central Divider (一半, 左侧) -tile.furenikusroads.yellow_chevron_mid_left.4.name=Central Divider (一半, 左侧) -tile.furenikusroads.yellow_chevron_mid_right.8.name=Central Divider (一半, 右侧, 细) -tile.furenikusroads.yellow_chevron_mid_right.12.name=Central Divider (一半, 右侧, 细) -tile.furenikusroads.yellow_chevron_mid_left.8.name=Central Divider (一半, 左侧, 细) -tile.furenikusroads.yellow_chevron_mid_left.12.name=Central Divider (一半, 左侧, 细) -tile.furenikusroads.yellow_chevron_side_line.name=中央分隔器(满) -tile.furenikusroads.yellow_junction_fork_mid.name=交叉 分岔 -tile.furenikusroads.yellow_junction_fork_mid_thin.name=交叉 分岔 (细) -tile.furenikusroads.yellow_junction_fork_chevron_mid_thin.name=交叉 分岔 (V形标志, 细) -tile.furenikusroads.yellow_junction_fork_chevron_mid.name=交叉 分岔 (V形标志) -tile.furenikusroads.yellow_junction_side_line_connection.0.name=过滤 车道 细->粗L 背面 连续 -tile.furenikusroads.yellow_junction_side_line_connection.4.name=过滤 车道 细->粗L 背面 -tile.furenikusroads.yellow_junction_side_line_connection.8.name=过滤 车道 细->粗L 向前 连续 -tile.furenikusroads.yellow_junction_side_line_connection.12.name=过滤 车道 细->粗L 向前 -tile.furenikusroads.yellow_junction_side_line_connection_thin.0.name=过滤 车道 细->细 L 背面 连续 -tile.furenikusroads.yellow_junction_side_line_connection_thin.4.name=过滤 车道 细->细 L 背面 -tile.furenikusroads.yellow_junction_side_line_connection_thin.8.name=过滤 车道 细->细 L 向前 连续 -tile.furenikusroads.yellow_junction_side_line_connection_thin.12.name=过滤 车道 细->细 L 向前 -tile.furenikusroads.yellow_junction_side_line_connection_thick_thick.0.name=过滤 车道 粗->粗L 背面 连续 -tile.furenikusroads.yellow_junction_side_line_connection_thick_thick.4.name=过滤 车道 粗->粗L 背面 -tile.furenikusroads.yellow_junction_side_line_connection_thick_thick.8.name=过滤 车道 粗->粗L 向前 连续 -tile.furenikusroads.yellow_junction_side_line_connection_thick_thick.12.name=过滤 车道 粗->粗L 向前 -tile.furenikusroads.yellow_junction_mid_line_connection.0.name=细 中间 线 to 粗过滤 线 L -tile.furenikusroads.yellow_junction_mid_line_connection.4.name=细 中间 线 to 粗过滤 线 R -tile.furenikusroads.yellow_junction_mid_line_connection.8.name=粗中间 线 to 粗过滤 线 R -tile.furenikusroads.yellow_junction_mid_line_connection.12.name=粗中间 线 to 粗过滤 线 R - - - -tile.furenikusroads.line_red_straight_full.0.name=直线 -tile.furenikusroads.line_red_straight_full.2.name=直线 (连续) -tile.furenikusroads.line_red_straight_thick.0.name=粗直线 -tile.furenikusroads.line_red_straight_thick.2.name=粗直线 (连续) -tile.furenikusroads.line_red_straight_double.0.name=双直线 -tile.furenikusroads.line_red_straight_double.2.name=双直线 (连续) -tile.furenikusroads.line_red_straight_double_thick.0.name=粗双直线 -tile.furenikusroads.line_red_straight_double_thick.2.name=粗双直线 (连续) -tile.furenikusroads.line_red_side_double.0.name=双侧线 -tile.furenikusroads.line_red_side_double_thick.0.name=粗双侧线 -tile.furenikusroads.line_red_side_single.0.name=侧线 -tile.furenikusroads.line_red_side_single_thick.0.name=粗侧线 -tile.furenikusroads.line_red_far_side.0.name=边 侧线 -tile.furenikusroads.line_red_far_side_thick.0.name=粗边 侧线 -tile.furenikusroads.line_red_middle_half_double.name=双直线 (一半) -tile.furenikusroads.line_red_middle_dash_double.name=双直线 (虚线) -tile.furenikusroads.line_red_middle_short.name=短直线 -tile.furenikusroads.line_red_filter_lane.name=粗短直线 -tile.furenikusroads.line_red_side_short.name=短边线 - -tile.furenikusroads.red_wheelchair_icon.name=残疾人标志 -tile.furenikusroads.red_chevron.name=V形标志 标志 -tile.furenikusroads.red_pedestrian.name=行人 标志 -tile.furenikusroads.red_merge_arrow.name=合并 箭头 标志 -tile.furenikusroads.red_give_way.name=让路 标志 -tile.furenikusroads.red_arrow_line.0.name=箭头(线) -tile.furenikusroads.red_arrow.0.name=箭头 (向前) -tile.furenikusroads.red_arrow.4.name=箭头 (侧面) -tile.furenikusroads.red_arrow_diagonal.4.name=箭头 (对角线) -tile.furenikusroads.red_arrow_diagonal.0.name=箭头 (对角线) -tile.furenikusroads.red_crossing_paint.name=人行横道 -tile.furenikusroads.line_red_thin_crossing.name=人行横道 (细) -tile.furenikusroads.line_red_crossing_diagonal.name=十字 线 -tile.furenikusroads.red_junction_a.0.name=交叉 进入 右侧 -tile.furenikusroads.red_junction_a.4.name=交叉 进入 左侧 -tile.furenikusroads.red_junction_a.8.name=交叉 进入 右侧 中间 -tile.furenikusroads.red_junction_b.0.name=交叉 进入 左侧 -tile.furenikusroads.red_junction_b.4.name=交叉 进入 右侧 -tile.furenikusroads.red_junction_b.8.name=交叉 进入 左侧 中间 -tile.furenikusroads.hatch_box_red.name=填充盒子 - -tile.furenikusroads.paint_letter_red_ab.0.name=字母A -tile.furenikusroads.paint_letter_red_ab.8.name=字母B -tile.furenikusroads.paint_letter_red_cd.0.name=字母C -tile.furenikusroads.paint_letter_red_cd.8.name=字母D -tile.furenikusroads.paint_letter_red_ef.0.name=字母E -tile.furenikusroads.paint_letter_red_ef.8.name=字母F -tile.furenikusroads.paint_letter_red_gh.0.name=字母G -tile.furenikusroads.paint_letter_red_gh.8.name=字母H -tile.furenikusroads.paint_letter_red_ij.0.name=字母I -tile.furenikusroads.paint_letter_red_ij.8.name=字母J -tile.furenikusroads.paint_letter_red_kl.0.name=字母K -tile.furenikusroads.paint_letter_red_kl.8.name=字母L -tile.furenikusroads.paint_letter_red_mn.0.name=字母M -tile.furenikusroads.paint_letter_red_mn.8.name=字母N -tile.furenikusroads.paint_letter_red_op.0.name=字母O -tile.furenikusroads.paint_letter_red_op.8.name=字母P -tile.furenikusroads.paint_letter_red_qr.0.name=字母Q -tile.furenikusroads.paint_letter_red_qr.8.name=字母R -tile.furenikusroads.paint_letter_red_st.0.name=字母S -tile.furenikusroads.paint_letter_red_st.8.name=字母T -tile.furenikusroads.paint_letter_red_uv.0.name=字母U -tile.furenikusroads.paint_letter_red_uv.8.name=字母V -tile.furenikusroads.paint_letter_red_wx.0.name=字母W -tile.furenikusroads.paint_letter_red_wx.8.name=字母X -tile.furenikusroads.paint_letter_red_yz.0.name=字母Y -tile.furenikusroads.paint_letter_red_yz.8.name=字母Z -tile.furenikusroads.paint_letter_red_01.0.name=数字 0 -tile.furenikusroads.paint_letter_red_01.8.name=数字 1 -tile.furenikusroads.paint_letter_red_23.0.name=数字 2 -tile.furenikusroads.paint_letter_red_23.8.name=数字 3 -tile.furenikusroads.paint_letter_red_45.0.name=数字 4 -tile.furenikusroads.paint_letter_red_45.8.name=数字 5 -tile.furenikusroads.paint_letter_red_67.0.name=数字 6 -tile.furenikusroads.paint_letter_red_67.8.name=数字 7 -tile.furenikusroads.paint_letter_red_89.0.name=数字 8 -tile.furenikusroads.paint_letter_red_89.8.name=数字 9 -tile.furenikusroads.paint_letter_red_punct_question_exclamation.0.name=? -tile.furenikusroads.paint_letter_red_punct_question_exclamation.8.name=! -tile.furenikusroads.paint_letter_red_punct_hash_slash.0.name=# -tile.furenikusroads.paint_letter_red_punct_hash_slash.8.name=/ - -tile.furenikusroads.red_slow.name=Prefab Text: 慢行 -tile.furenikusroads.red_stop.name=Prefab Text: 停止 -tile.furenikusroads.red_bike.name=Prefab Text: 自行车 -tile.furenikusroads.red_bus.name=Prefab Text: 巴士 -tile.furenikusroads.red_taxi.name=Prefab Text: 出租车 -tile.furenikusroads.red_lane.name=Prefab Text: 车道 -tile.furenikusroads.red_keep.name=Prefab Text: 主道 -tile.furenikusroads.red_clear.name=Prefab Text: 干净 -tile.furenikusroads.red_turn.name=Prefab Text: 转弯 -tile.furenikusroads.red_left.name=Prefab Text: 左侧 -tile.furenikusroads.red_right.name=Prefab Text: 右侧 -tile.furenikusroads.red_only.name=Prefab Text: 唯一 -tile.furenikusroads.red_no.name=Prefab Text: 不 -tile.furenikusroads.red_entry.name=Prefab Text: 入口 -tile.furenikusroads.red_town.name=Prefab Text: 镇子 -tile.furenikusroads.red_city.name=Prefab Text: 城市 -tile.furenikusroads.red_ctre.name=Prefab Text: C'tre -tile.furenikusroads.red_bike_icon.name=自行车 标志 - -tile.furenikusroads.red_chevron_left_a.name=V形标志 (左侧) -tile.furenikusroads.red_chevron_mid.0.name=V形标志 (中间) -tile.furenikusroads.red_chevron_mid.4.name=V形标志 (中间) -tile.furenikusroads.red_chevron_right_a.name=V形标志 (右侧) -tile.furenikusroads.red_chevron_left_a_thin.name=V形标志 (左侧, 细) -tile.furenikusroads.red_chevron_mid.8.name=V形标志 (中间, 细) -tile.furenikusroads.red_chevron_mid.12.name=V形标志 (中间, 细) -tile.furenikusroads.red_chevron_right_a_thin.name=V形标志 (右侧, 细) -tile.furenikusroads.red_junction_filter_left.name=过滤 车道 (左侧) -tile.furenikusroads.red_junction_filter_right.name=过滤 车道 (右侧) -tile.furenikusroads.red_junction_filter_left_thin.name=过滤 车道 (左侧, 细) -tile.furenikusroads.red_junction_filter_right_thin.name=过滤 车道 (右侧, 细) -tile.furenikusroads.red_junction_filter_left_empty.name=过滤 车道 (左侧, 隐藏) -tile.furenikusroads.red_junction_filter_right_empty.name=过滤 车道 (右侧, 隐藏) -tile.furenikusroads.red_chevron_mid_right.0.name=Central Divider (一半, 右侧) -tile.furenikusroads.red_chevron_mid_right.4.name=Central Divider (一半, 右侧) -tile.furenikusroads.red_chevron_mid_left.0.name=Central Divider (一半, 左侧) -tile.furenikusroads.red_chevron_mid_left.4.name=Central Divider (一半, 左侧) -tile.furenikusroads.red_chevron_mid_right.8.name=Central Divider (一半, 右侧, 细) -tile.furenikusroads.red_chevron_mid_right.12.name=Central Divider (一半, 右侧, 细) -tile.furenikusroads.red_chevron_mid_left.8.name=Central Divider (一半, 左侧, 细) -tile.furenikusroads.red_chevron_mid_left.12.name=Central Divider (一半, 左侧, 细) -tile.furenikusroads.red_chevron_side_line.name=中央分隔器(满) -tile.furenikusroads.red_junction_fork_mid.name=交叉 分岔 -tile.furenikusroads.red_junction_fork_mid_thin.name=交叉 分岔 (细) -tile.furenikusroads.red_junction_fork_chevron_mid_thin.name=交叉 分岔 (V形标志, 细) -tile.furenikusroads.red_junction_fork_chevron_mid.name=交叉 分岔 (V形标志) -tile.furenikusroads.red_junction_side_line_connection.0.name=过滤 车道 细->粗L 背面 连续 -tile.furenikusroads.red_junction_side_line_connection.4.name=过滤 车道 细->粗L 背面 -tile.furenikusroads.red_junction_side_line_connection.8.name=过滤 车道 细->粗L 向前 连续 -tile.furenikusroads.red_junction_side_line_connection.12.name=过滤 车道 细->粗L 向前 -tile.furenikusroads.red_junction_side_line_connection_thin.0.name=过滤 车道 细->细 L 背面 连续 -tile.furenikusroads.red_junction_side_line_connection_thin.4.name=过滤 车道 细->细 L 背面 -tile.furenikusroads.red_junction_side_line_connection_thin.8.name=过滤 车道 细->细 L 向前 连续 -tile.furenikusroads.red_junction_side_line_connection_thin.12.name=过滤 车道 细->细 L 向前 -tile.furenikusroads.red_junction_side_line_connection_thick_thick.0.name=过滤 车道 粗->粗L 背面 连续 -tile.furenikusroads.red_junction_side_line_connection_thick_thick.4.name=过滤 车道 粗->粗L 背面 -tile.furenikusroads.red_junction_side_line_connection_thick_thick.8.name=过滤 车道 粗->粗L 向前 连续 -tile.furenikusroads.red_junction_side_line_connection_thick_thick.12.name=过滤 车道 粗->粗L 向前 -tile.furenikusroads.red_junction_mid_line_connection.0.name=细 中间 线 to 粗过滤 线 L -tile.furenikusroads.red_junction_mid_line_connection.4.name=细 中间 线 to 粗过滤 线 R -tile.furenikusroads.red_junction_mid_line_connection.8.name=粗中间 线 to 粗过滤 线 R -tile.furenikusroads.red_junction_mid_line_connection.12.name=粗中间 线 to 粗过滤 线 R - - - -item.pneumatic_drill.name=空气钻 -item.tarmac_rammer.name=柏油碎石机 -item.paint_gun.name=喷漆枪 -item.paint_scraper.name=刮漆机 -item.wrench.name=扳手 - -item.pneumatic_drill_bit.name=空气钻钻头 -item.machine_frame.name=机器框架 -item.tool_handle.name=工具手柄 -item.large_glass_tank.name=大型玻璃罐 -item.small_glass_tank.name=小型玻璃罐 -item.paint_gun_barrel.name=油漆枪筒 -item.paint_gun_display.name=油漆枪显示器 -item.coal_coke.name=煤焦炭 -item.cement_dust.name=水泥沙 -item.limestone_dust.name=石灰石沙 -item.clinker_mix.name=渣块混合料 - -item.tarmac_cutter_blade_1_iron.name=铁质沥青切割机刀片 -item.tarmac_cutter_blade_1_gold.name=黄金沥青切割机刀片 -item.tarmac_cutter_blade_1_diamond.name=钻石沥青切割机刀片 -item.tarmac_cutter_blade_2_iron.name=铁质沥青切割机刀片 -item.tarmac_cutter_blade_2_gold.name=黄金沥青切割机刀片 -item.tarmac_cutter_blade_2_diamond.name=钻石沥青切割机刀片 -item.tarmac_cutter_blade_4_iron.name=铁质沥青切割机刀片 -item.tarmac_cutter_blade_4_gold.name=黄金沥青切割机刀片 -item.tarmac_cutter_blade_4_diamond.name=钻石沥青切割机刀片 -item.tarmac_cutter_blade_8_iron.name=铁质沥青切割机刀片 -item.tarmac_cutter_blade_8_gold.name=黄金沥青切割机刀片 -item.tarmac_cutter_blade_8_diamond.name=钻石沥青切割机刀片 - -item.tarmac_fragment_standard.name=柏油路石子 -item.tarmac_fragment_concrete_1.name=混凝土道路石子 -item.tarmac_fragment_concrete_2.name=混凝土道路石子 -item.tarmac_fragment_light.name=亮色道路石子 -item.tarmac_fragment_fine.name=高级道路石子 -item.tarmac_fragment_dark.name=暗色道路石子 -item.tarmac_fragment_pale.name=灰色道路石子 -item.tarmac_fragment_red.name=红色道路石子 -item.tarmac_fragment_blue.name=蓝色道路石子 -item.tarmac_fragment_white.name=白色道路石子 -item.tarmac_fragment_yellow.name=黄色道路石子 -item.tarmac_fragment_green.name=绿色道路石子 -item.tarmac_fragment_muddy.name=泥土道路石子 - -item.tarmac_fragment_stone.name=石头道路石子 -item.tarmac_fragment_grass.name=草地道路石子 -item.tarmac_fragment_dirt.name=烂泥道路石子 -item.tarmac_fragment_gravel.name=砂砾道路石子 -item.tarmac_fragment_sand.name=沙道路石子 - -item.sidewalk_fragment_standard.name=人行道石子 -item.sidewalk_fragment_clean.name=干净的人行道石子 -item.sidewalk_fragment_dark.name=暗色的人行道石子 -item.sidewalk_fragment_tan.name=棕色人行道石子 - -fluid.white_paint=白漆 -fluid.yellow_paint=黄漆 -fluid.red_paint=红漆 -fluid.tar=泊油 - -itemGroup.tab_roads=[更多道路] 道路 -itemGroup.tab_sidewalks=[更多道路] 人行道 -itemGroup.tab_tools=[更多道路] 工具 -itemGroup.tab_road_parts=[更多道路] 道路零件 -itemGroup.tab_paint_lines=[更多道路] 油漆线 -itemGroup.tab_paint_icons=[更多道路] 道路标志 -itemGroup.tab_paint_letters=[更多道路] 字母标志 -itemGroup.tab_paint_text=[更多道路] 文字标志 -itemGroup.tab_paint_junction=[更多道路] 路口漆 \ No newline at end of file diff --git a/src/main/resources/assets/furenikusroads/logo.png b/src/main/resources/assets/furenikusroads/logo.png deleted file mode 100644 index 335ffd99d472ffc5d2e1494bb58c376f2c20d63a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67448 zcmeFZXIRte);_9qF$9z<1Q={6(vcFX8aqhuJxB*35_&H}5EQUNsG>sX9RaB!bONY! zK{`Px(yNs7L}$;QnLYbG=X^OI{^#|Yxn?F4@>|cn*1FeP_jzJYinzJdwXYR=f{s9ySux4dwcu)`v(UH z;Qjym=YJ9SKL&weZJ}h4Cx=`$Rkc8P|Nr^VA+1f?Gr+M&P&WAPwJ?QRZ6ckjYfBM?xsdi}Bca~6&6Obnv#GLO3qxpS?4!Nb-vS{1f(!S4b zN$?Wz!ovGb82M#)6B{Ua*|0KC0z-bENk0|=Uhd1ABc_6v9s1o!AIR^U``;h`U+Dff zZ2rGU83hsa)*|J;+i&gZo%^G0qx>u*>(TQzw4njrN_zX%7GDmBuAw?-6VMl_cAoIb zu?kmiEsTDLSyJB*%SL>%!j(M8vXnx+< zpCh=pdvr0$*CDq$vJ+OnX$58W{%o^8dJ4TIX$h5f?$rM_VBC=zcwg(q$m%yDekWF( z)`L&Lf>^LE07l`2709?B(&*tUfG!Xg3~gsb zpxEox3yS*;eY8Yk;KrV|TSP9)!5-`_$|{3eeNsV+oc^8*NmLRgu#~#qvI+aHRF|Rs z)8_f0hE$msX|C_8(oiXqs`_FMvaB-SrLCaH-cTjH(+&Lnvx_RhXRGBecSrbiG4OhZ z2qwr%*ab?@#kRvXG-K`YE(3_QT*B+K`r zda=1s&q?jNjMfP`RSC>}&SP0mmqzp3V5)t9Y)#D$k`Y@KL?pjk!HyT{H^fhKKRDkU z@$(-P-i~Ri8pFRmygU_!RgX)n?9TYa{gSuXG{Qrbx|9MxA;&|6U3u{!A3R*h5BRlc z#v1ygZ1xFb)#aCWlCT%+64sAeL+{R-lbv>H9ie+$@vWGMr>NbS5u>V=z?UT2P&q+G zYlQ|Q97XfqQzE|5^A=3w_{4|zEw3N`gu$ZsUO^YY0kNlmS-OJ_QL-q%jJu#a+68+( zU@c0Iqu@1+wua7hiOikm{S?P8uRWr!RE!eH{&Xz#lybB|euEGBliw4O4*Pc3Y6^wV zz4(RhhXzw4hlM>?5|jUm4>Z~einkV}B7YjA4HVZUlKtz`V#Lq!eA&*1l0S~}XtaUa zF_Zx6NX-Rw+>I{8T(Ee>t|*lUALPz_X=&d`*Qx|9Z-nRrZ=T*18-|5=+11o=fg>P~ zcrh5pw^vgYxL5FpFqlTlfY*wv71Bz3&n5{L1C4cj2iGtG1_RtV6baOZ^Q%X&#+<~X zJhZOIXy+!UT%Q!X48)H`!APv4niH(RjG!wMq_|seWr{b`L%c zUo|!u7b~+QsctB7UHK82K?@#c|LfO=1g==My@nfjo z*@Q);nrPXKljy|q54N*besZl@B*w@&D))%&{H ziHd9q1+zFwV9dmXnsYyeYH`)hh!&1C-SMNj#Wsq}wjkqwlO($5G{58fC8~hiJ}m-A zUq(&tSoVYgTZtsVPe&rzFGya092fo7yf0=Rs)PHW-OO0%ecZGYW+A?ao^C3=$d1d9uhq zoE*?QnkQP~Fx!zJnRQy-v%hk`6R2REtSpC*JB~iE)u@`*0 zmfs+>I9@Mnqb$dLF1_ZIpE4=NEPb_OyMW(Hu3XbRX!>2C&T@*(k@w(P(rXjgkbuhi zKf{#-x8z4Ffdt8>Ei`#f`aQIa;vgEgN9qVN0SK4NPvV|u zZNKcjF1>CNpWg~Q>Cv)=ui}#khof5phJkyG&qDa)Eu0(Zx>@9ai>ga;R?t8|PEy5W72f?@xYEefc1&NG7Qb zHqpp;>Ylz0RC3m`w?^NAeVx738&I#Kjw4o3bz1?mP0RL{Q416_NC)VZ7?-`VA&t=w z-4#<}_Ub0&!ianaQd4X5?{LS`Y%;Xm^d>GldS&u|D3-uf_oNnuO?`URS^4>UB2QW( z)9C$h_GT3pn&!l7#dp4&m-_XXiRzLA@`b%rNnY)XTO**dxceiDZiC!cTOkrtzc;VX zpBqkAI{A4!2C+d2j#j(A+K_pgo*{Zq%R9nePEa_i)Qhuz1v9w&=vLrt^N&+%QUf{a zQrti2M~G?Ll8i4uvz!@$Z<(9i*V9I|Ua|pIN=i#A^%fhh_8`ftpZHMQT`cKF=5YN) zpW%-X`Ar|FkJ{l#Ugibg7QP=rjUJGLF9_Zl7EY26b?*-kOK7bW79rG0`;h?W{ZzaQ zt~rvQazp6$9WI$c+!sxep=3! zcK55Mk8s%9ZWF$a>psw`>BXmB^m)`;Kqt0+j47s_X#cS)lC;w%P~qi&+~ z#WWnj-JI&S&cKS!WGoyd@OMfBu=82|Jw7wPeI)zeB zc?ZmYx{QkmBWa;cDYMiIL8Tu;2Oz}1zagaX;!dWVDd12fifd#<0Sm35>y~P4qhd-Y zik}cp(`Q@G_;5Z?PSrKw9lhu(*p)=j2YoFVt*h4Bu?c&(-9f+Lp?%D3-a?&QMSk$o zkLS7P6Grc(PY%_)C0(Q9{*s#}$NSg~Fo#e3B+CsugvwAmZ_ePh_ zQz7KOx|8&W_>Y<;GG@HnZ}O+fy60B>3e!6KC5xy?GgRSKgtrbYy3^(GQnlGP*W)D1 zfsEx!iLJL;$#m5Vzj}~nXAioFNL6k@)qn$^j={1tag6xB7{?j3u+Q8l%5`{msDlMz6;(%!22FXlsFY%t!}p#j8YK+3Di~ zu~1j7?we#&)a1F>n*R6U>RqSk-#OOc?X;0EhZ+OpCDf#%zMkq~mOc^aEO2vN8>w@T zd(0tfb4g7=v!p{S#nP-`3p&@QY;s=TIBQrM*u~0B3j$w2S$961+2?1~ogYPK@ZbGn zJb6ODtS5XwKE-L*4YI(Z4>)3YmUZ72I zUwsuC7JJpG3)XA&hjsF;vPQgZFkQiyN$>hTb9vj7V!ED8S8yD7s-?B?(`TIGwNBl+ zTp}7iPs=v?Wc}{hb$xVPB4g+p^E{{a$hg+I1-+YV?@=WQ{L0})yB1=`P!8D+n65Lr zZPlkzKhs8r)h5}o#q+h8m79#wh>l%NpHWS^Oq(@2@UYFr%Cn!nNf{%-jUMU}bEL~A znN|8_SVA}v8Shu6+o>K0L!Uuzn*fiJ1x>4@F9YSxmORuKQzsLlpw%-bNgzd=&|g3wR|zzZLz!DflLh2 zr#kjj($L!n>5!(Q&vH-9jD{y_{K&d(Z5`#auB7;)yY0ManK8`3*U=t*>ZsJPmw7OJ zJg&4+q7wMJY!!5K&GC$kD76{WDtV3W9kmg+(dj4??le!-l0I`ltD=E#bI+M1SU;m(#Gw|Al$Sjk;OaSYcW!Z=*OL?^t2PXeRDD;|{bn~r^nc50+2tZO#mFd%pi#px%?&jc06 zUGkYK8Q!ms!H~;Da*Mwpzvly;g9If=gxL0^&EQXPF+^+96PvwFNgGI>OzXpB6KJRW6rO2x9SF1);kwHm&z*&!) z8B{!6WfYBy>oxxrtyn5g(Qz3q7ZTgVG}A{Nn?QP{>({h(2! z3O!6KPTOSRB6#$ID<3*8egvO4SzA|a35DB4@~5|e^5&l$3#W1#TprWkSG+Q!ImyN? zZFed(Vthy(11mC}Y`ok7^9^otcnKF5qPqk7M?+St>a>Xl^>?39IXlS+_v3}$!}C_q z=>23ugW2Zu#*AjC`vPc^s1;+Lpna8XOZ%r6N>Ul0z9~1X-eAGXOzF)|$BwCom$|;^ z_-=83t&qrvYr2|V!l&;mkg#$_&OjT-?7@>beTQVu>;Bo$VUcvkAK~Kf?Twh;H~i>b zbiFi-x8s~(uSNtdhEd9M(tpVZ$_I@d6a-wupCQTiJTIVYynkHnf-d5NeMg~GEgx2` z;T}mH$9n{k23>C4Z{m??2(M`BE_45i))3N&HmR8w4d@Dz@DSf_G>e*wJ?$VLzfzK- zEj>pJx;5o|bHxNR?E^irSGr#&+Pev(GmD8VnkZ-V@8WAnjeG{^Fa6ojW@}Qc(IRNf zgp(Y=*zk(qzY8xX6&>Yiq{ei+yl{m|x-+SIHb9LOgV?DLk)X|;!7+Y#Lqwiulw6)A z1wPib&sbQ5FX4L5wev^e9;Cr2@Yfa!ay53E6`~WhMlFGyYk~y?{ zwK(goV^$$c�W&YVjiS&lFuB5k2@4!5K!7?Ie6XX_iGSzXe7@NfpmB6{kX3RA;qUbFuE$lMXP{U~aphsfEwqZf0F|zS&7o z>mtkto1W|N^nH9_(^+tu5uI(7bXO43dyG4A3|@sA&c;$s{suKkvRuCAUWjuyxmVl9 zNg|G4ck3kwFm=t0=n&8~f&;b}XmS?!iak+V=7=w4K)h4=vg~$SUz2TRY8ar%c<1ut z=hQDPeuNipFoZo6v4l?eF#On`$aa@?E18N|UVn$kb__7YqpNhy6?kJ=qipBKQcZ?g zb`)q2YK2{sP8C=}Lk*ifp(3zNJTcX@e`r?1URgWkyS&Ub^>XASz)(Vs2&=lcx|_jI zw>cs+cGfX*Mt~I|m02nLm3Db-2~XoZ939Zbr}AdyOhd>s{&UYJQoIcwD=HzgX@}R| zXV&0FmjfyO!P1Ox!E!vt}7Q$>b^C>qhCRu}Q$-;s3BO<*Y5v6-C>FZL5rpey^ zY07HY9F`K%R|gm9TD=XM_-3HC&ME8=u4xr&)(!IV#s{~KJH1AaSiS~2?ROA9PBg=< zE$}P(dJXo`+`38L^K7_aH{s$PWaCq~W9QOWAE+gC`%MHy4NG}+O0;05-n-J}zAkLj zp2TDyxEnt=alK@oOQs9v{DfdMV(8#Z^1>3PPoUlp^~6 z_Rk*Yq`ZC3x$i9BKVxI}d{{m+>$cwz=PJIMxow*iTN`FpyE12XuoG>$O@K+kO~jur z54M~;$fzwd=<2dP-cgKk6B$}$?0KqNtE>N}2X}wW`Q!E9`mF^L)dTc&l~~x%`V`GZ zOyhE7i*^$lDEeLsD2Z7*W6#QazoY#~Srdc;Vd%VuX&ycVezAly>|ZNqDD6$ zEoyZXk9u&VS((J}MCR%PB7XGBR-$enLUMI5-3eR#>1}UUZ$K)sh({BgOKPQw zQ<*)-jyCZo9hC0aHP+%>9K2P=3w$~wwyL1NrJd0_$ zR}^xq-z=|>!I8s5_pyl%kZ``pE1={28-twXnYO~qc~_~}x+Htg^-7F7x9r^KpTXCo zt@iT6^+8EA{VF?jt$cq15so8iBh?iittd$$UmTOzFoLGm%*1r9-R7C6ILjbb$~wo?b=65tu)6Wb*OL-w zR`||JT+_?9N?zMnztCfpU3{T5B$BV(`k?~z-jwn|$?MXMzT_nMRM$Du)Odn8X8N63 zZMJRz%T&e5NUblQyZ4=Mp1u7YaIwesqOZIP_m)B9=zfz2tYqgU;Xa9J&zaVBL0%QE z$DABO9PgJ!k1GcflyRTGZYp zp?1o|C&%>ypgA_Tvr-nDAGoLvz8FNfC0U(+pVh#3klL5mF=?xLkoIt|hcBR+?}^OT zg{Qt;{k+@I>VP{cG!*x(5QytD`Zlo;WUlZX0NOv9O`l z>dwKMTFuf{w-j1kH;euD0%OAhrao6Ny~^HEES!~nMkzO(UedHBTdsr8YVgtR?pFps zv~{v|3+9$C9PA~2AA2*3j@w|#Vw7_NqWLPnB{cF|bLaL%2e$!Rk~+?5VO`QnqiF$} zJ)xnix{BXbz?dh!*!_096D|?<@D}CIjCnpuM873OEQcqgCzwS^V78BN+?mZZGFhg7 zNi6k|N4JDe%Vkj|NM~LzoR}9x>#K~ewy-0Lzc##)$;;nVSFXzJJYji@iz0|~V;9Hj zK1^;*7~5gGE1in1w4}A+HaR&g{wcif`=wBU5oE~J{d5Rcay|_TAKk6bm(l+EgcyWX zYt9JSok$r3jmiFdGq+-0o5`okU*dI0>LJ9^IJz`J`<9T*iyEHoMI~O$9B1^kfJ)Aa z2p1zcB+a(uMH}3=Ybo-|ax!CTdA&7J#OI;2kS+6?yr#o}qNd0qrM6-IjgTI|ezMHP z`NNoSwYPrH56^^Xe}UcA6vemOM=tl$_vYvB{}|m_Xxy>8;^vZLX!*iBb5UxlU(79o zH#z6?(t&Iozn^`cHn-}+YH0-B^yrw(l?4qJ%a5ALL21;rP4K;wGfGv7=x>heFYAM> zR%5yQde+QZUcZ|>d9cJgy}MMWY}D^HD`UD+TleDNSl+HC{!-b@3ar?gA>mk!0@cn< z$fQ1BthL3tsgtCxHz4j5s*Opg>9e56Ll+DMHE!E(+sLze9!eKXNM?9QIr`&O_%2ch zspejE{K;*u`h}FeIUD}{&6D?JTt$a2{Pxl;i%$v@iY3kD4l!I1P7mO(N!lw4ZRc7aoOjFkkvTzf_(o{qnxdraougS4y8fkgb#BE5QJKU`xBluJ zmEfqfUWQ(AnD4aD@P)SwfaqkZ=hDSss7{!ZH@pL;zfqB@;F4&zQaa)iGkYgbPuPg6 z1vU|%cbi|Uy<+*5fF;~a!H{+Mq9je(v6INS0KJdO?VB%hB8VI(eFFJ>6v{@pT5|(^ zmF`3gZl4`e$$B;A^Gk3T0z9EfyNdC)-5R3vY9Enzh+t$@2@rlXLs&T!(-rKkIh7(h znR4&3i55ea?ufd}ORl*^_;WjGbcLQfSV0`FPqNyu;HRX0FHV6N?j%cXESta2=?vAy&a=wVPaP3L4D znO2e)P_NeaZ?FbCWV0(B`Mo-4@qC(j?-R9<22q#B72Cb=ceM7eFVvg2h;_i;DdjFv%tY#ForU-|Bfo`07bA;v zb{eZMiQ9c`%3s)o>B`;*3!`GNF!Fjc6T4rH?Tn^xSE>iwC0c*6C|cSts%mFz`jpvJ zt12*=6Tu$aR{pBS+jiIDIBCE;Bm`@?} zvOf!RwwwqfB8TGZDRqq3!@~GpW(cso!NMB~N>gTs7}kO4DmJ`lcWqloDYt-7IRVRz z{!Ggp5@Lw82%pL!_g`{8PNWzQ-^C1xcBQu~VSA%7Zz*WKIKTq$mT;{n8Vt`tZC2ik zh?8gx+&#)rqXSg7T9RnTN7-y5-|W!TG3z7SjnLJFa|e&LW^yuooo$6PDYIu1j0?VT zF}hs_>uw`KI-T(#!SvZ0<5LdxOL*s-`)xgZ`J#I8>-o!*yxn2y*pM$KF=_`^#$}X{ zFZzCJXQ2 z;Azl$k|*d1dJbw6sv!U?K{G20`>(1F3sdu=x-i7F~>qy|1 zE{J2c^L4M1%+30zx&xAjO1Q4LJ6;rOc070DwtGKd>2DQS#EO$_;SxareJP!>cBO2x zsDCywe?4#ZLB@1P64it|jaK%z^H0o*qAy5vxNn~Ui(zDNt8BM4chQLafZNB*{@AFa zi%!E`F!%V}oz4K65__IX+qWjBs>+#id#55g)p4_7({y>CIG61Pc9qVDY*Tuj((_pF zjaIvL0AYG^96V08XV0~U-)Q5=vN{PHM1;K@@mfC` zs@)12rFqLn(sE#UPU`-vTeNH`*&kInKdqd4ao(+^8L4orc=qIo>O!j=ZF08PdCrbQDV< zCj3zSTp(XFdqQKSy3ylmX@)~zUGxPNuH%xk$ntF?EOVPeUQ}NY^}02Uv%Y8N`$msB zTNvqth6F*Ft1A9wl(>Exf0lrgTxQkySu~xblbBr#)oZE4wbPeKq7wJE^haXmn{y8# zC~F?3`8qQKp!&e_=rph7=!F!2ujb8rUw(KMoHmP6$@RT?`jpxE0K`i24@v*z=td?+ zr@JXj+c*dRemr8z>MVNfi-%Gb`qfnBj=PFO?w%>=YJc8XOmh7{>?)%3dh`pODW$ZN zdVATsqiq3t`(5_Al3T5DC!7|F!R>{VX%oARF4j*E474}C+J82WJ&?2uyhSM(#>Y`# z8}en(Yrm)~4Q{0qGt;VkG`oIcY(Ru~-gzS{Rm&dF@t3mc+`ZoG2{G4|$E0HI~(sM`$#-9Idx!R3ztlDlqa$B$6&{Y&s})>}D;TcbAfV{JGA! zZdfdvZfGMOZx*MuPa-0JSel`44sh>!*5yJH@Oel&cUlBxWf8^FaAuPvsjhL46&K zVcZW=Mzv+3E)aggF!eRR{k#Y1w`VjmQ**oUX86d;DFy`UJn}1Io-=H01^?lEWng!3 zqw~&hUy0*(SVF_Pr$IOW6KNj8Hlwkwrx%S6W2`anGnxTz*m1$PWVnN4X~WDtGQyd+ z{dSva4_>%*KD97poLBIV(7H{am%>abF8SoT|z%uXlPx`F7OMU52>RML5Na` zFhcO(&FNI1`02n@E%(DX>PY7bihOV( zS+5;7p*2sh(7upoov>K&>rf~=aGU8@Am|{)Ab6%Kc~Pp$kW@*%$;XYKcgA=6A!C>J^QWxZrIXw^cmmkv&>i|(res2&s-_L^!ypGS_?AXmwwGTV>=d*(?*{`!N z@dRLYy|9SfWZpyN<)~w{irVI1#g#ZjsW1;xgF41A%xr}2Kt8hdOb{XCG~St|WFGRr zC#|fRf9*E5;NaAUh;RvBU#PR7Qum2Me6U}}Na=Y5DQ0}O+_&Ha1fNwPx4Yo1 zI&sbGJ;vt~E#>gZg01K6R0vcn4U{sw-YPUTh*0-^N$EnefII`Zr)GI9OkLvs;abMK z6_3Y01zv$);|RvlBSH?!G-q@K6{lD5NOLj4u+*T&r6Rr`E<&c@&Pu;~e8*T=SR)_< zI(G&T3kZk2ZZ(&wv2VaykP~W*VTv7Re*FyIq6aD%Hs(5BUzIk5UOr4I!Y3HkP8G{2 z6~d>_>W=AzMevndQeuL1#*6Ad)FI71MC}4`^lFsuVoOK}xVSi)ASd&3h)$S6Fih(K zpJ$fnMe-Y{Bh@N=Q5^b^NTjW~Se0YOh;ejmFP2c6WGzviiWHM);0Oku0oE|Y&SGTF z$t!RK^Kr;df5U&kRWyiREZ{Je(tq?hsF5jAcw`I1MyS{d42or9BUlBu(ZJ@1^ zUK&Yo;~_h#5H8L?IhDaUXK}N?cE6Wz{C_~|$)ZWBheTo|BgfzT+R)r>S9Mlx6Q#EE zD%gmMEyV?EPA5DFFw-f|5xt1w7~lqxm|5Q)Xae!&ATTA;8#m=o%e3C3ilt#AoUdn+ z*WuseQKE3B&r&31j~0 zkQ!?;&Ai1J0kDjAj91 z=ApiqlG-o)Ed*jF-#c>siH`n;uDM6fv>qxP`$yKxNdK3>;WT z7=}BHC;+9OkAo8w^ud~V14LF`k%mGedmC&PIvE`JRFu8#&vrlX*ol5CH{J0M>F;+X ziFovHhS$~Q4aF1cvQP#{+cD7sIdV3I;tp4GY>9?}`||@|^wOYF1t>0jT2Lb@0^B{O zK~RD_>9@%oOp6I>1SJZ@MmtR0rwdc{@)ljw z==^S*B(!$d8gSjKh~GhfP!89d$?rPh+?AFr()iby#z$v#dnqJ;A5UJpOkG9?m|Pss z#4+GzgysMh^8y6Wm^&>nEenu1J0))u`JQy;(Zt@FfrI#e<1Y5!aL-DgThsh!+_{a* z^VghtP_g9s z_5NGzix$kiBZ(FW80&Iy%0T9!XBoiFV7oeD8pTIQI#p`-Seab4f=!{a zW5%Ff;^+`4(_bZn>Te~ZKu*6m&HKzhM?ci;V0dR!7Ascod}-xO$v z{{WhlTj|?3)=JfoGsw89;L~1#Sa0DMwfF!vHfQ~3E z_5>(Qo}QmWx~#fY1!bnJgrz}Cj!A7F?h~adqk}Lcw$)j11cQb`bS;?oZ6|C*0KL`5 zaP}_Gl!Wfd6<{6;2_T7l)R_Gx{cj# z^?vDzss{z0?dPjGZ8q;>3Eo5_vNep3pww%Vn-dWU0Nc`13GMy(oNvuCg<~-ONatNi4zBDX%5;52zBh7l`Cn<6iev8_nSA+Uzm!^tJ_V+T|qC)49ev% zfa*WY;h=e!U7D7{WR@;d#2#`VFLRkcJpeJjVc;9mB+}fvXG=momo2Y0r&BCIetoVL z1iHE^BJc@;(9JXD<>JpfR`SadDmK$FVYCr}Y4{|l-~yE7AqX&px=W)eXvCdg!hL&b zvO1IF;Zql#7G3mYOu$$}6^UFvpIy&Xl_<)hkB^-`UU!7RHBm=<#F%0r6iZkMDm}5X zb4Rd7i1z$wZbCuPx| zWyEm@sTe;KEFpcLHCX_{P=&{Tuu^3Y8xzM{fcgVQIT3!ynZBuO+#}Ofd{Ez*xG`iT&s8MBm%LOV^s&P4a=(BFPwk=R2mVy`%xI}tTXveL9 z&tN>s8+BT_z1}TKvgiTO=eJt<905a!8EI*o!BPo7e#}|g%KMzd&18XT#HqrFsvPtK^V5Xj@kV5PcAM(n&k$%grPgbq?XJ30}@!sSHPrWM!xno?W2PP#h zYiP=sOB+vNJj)yJwh;0?3aREwVB~%s$4?#| z?j`%XJMrJ@{^rhQ5j<$^z}<2Cans8-(8V~ouM_1UEsST|KV#|ea^{lbobR{Q^#1p? ztcY0n--7Ca$Pej_fYP`G<-quR%m0e;!bYuHm z<+>|l{;4wQ6F-T^_$-(!)C^dG9Pxk;Whu!p4lj^!FDE zN;krM6w0pq5FwNTCf3C+*o37*_JS9152q)msJ8tv-ZJ9jGAQF@@wtt!Vy;!_8i!#i z%dg_NqX-lh3~6MZykgQ}LFeY4_)Yo0m@Jn#eDuDBO^OJkEIQ8fGo>1<@FFYm-^fw_ z4Y{w(SVFdMoauSA`GwXFs>t!MK+wgQnse+(kr^Shd4JI9V9o@Tr?3PLcTBX?t3;e~ zlTS4M)>g+1?35|@oTBr|htPCp_gPSFVwu8dgu#@`2MAR*wP_v?I;pt%~VT#S5 zxC}r4Hs)w{61`M_I&KNwJt4pda}Xl%yo@A9uiUH33{Yh zuCojU4g-x1->RWArQqYeR}yLHo5Z zoOS=jn5}DyDoJqPC{TgR&l5fl`b(j=KG0Ys3l9cf+1+VgS$&a2#J@4vn16g~+DKUz zy`>>3Ey9(^Uq#G_Z=47+ffzf1_A?L3F2TPgp4b=G{-h|vMm)J)4;=@Z&kE3>-k=Vn z0a_A==g89CXZqRa-3pGDvzkljJgbELr%_c$2dvISi%gs&LoI)Cw*rY$HdPB zIMwuvW`0uP^52^r&F)FH7Juj@A8*w^BK=fD#to#rG97|47KnW@AcwhB+1VIXIL&qR zcMa99&XBA^x*x=z03se`B?s`EU7!g;m`!zAM<$yg_S7{7wbS~$_x=&Ww}v@M_rK5= zV6$3HpyvGrbM55$bxQ-o2cGGDVgxfj9n>hYVlYb_M<)tH@OO?ND5WogQ4ykKULa?Q zJ-Qtjk5dM>CbOnR%}*95U5GXD8NGQO-%x#Lek4x~^fR_&Pw`Cl4Ho2B6c*$GXl4~` zl_rOGcC^#j91)Sop^u~mUt6m{emYbcW+Iq4k&V*j5~h`B_(zkab_eSCknE@nb=J&! zTZvyhNChE71t98xqm}<~GGDo9pg!wUB{n4A$Oap-`EYM& z{fG!3guz&xgW^;hld+SGiM~8QP6v4(b)W4=<|P z?7&w-d~-kfU!APXUzq;q*s&hK!F9LpHE3EMbC|HJn^5NI zh&6Gck#W+!X|#q~0lmW@_#ITOS-j7(x$ zKmcN3PyY|4@Ml(%EBunm-8u+qQzx>Ma;Md&$rjUQRO{VujN*A`; zp0s3`8G`;Cp7u(xzX4#Q2Xpgl`#U@_GxE!KDKQUB>T(Yy24a&h{m6^I`h? z+!?B%e=@32SEP)5gmRHA?b^u-Lj8K6+UJq)Fk3jTNW9Az7S zltc?6&Ww}^5Q&xr(h}iA`w|aCgi#PGJgMbIT7r|wHy!APT%2U;Fb#}@c!wPi8*?FitDgW|1p@pDv%exgTa_a! zVo4ly^M59~FlN6as&=Pd1{Zm+Ukz@I<#r8d`8$+#*JJ+e*-$Hai<_*EHoo2!D&;AMU?jo`l2-!Tu7pLzHv+s`QegY9vZ9u3ixG=czl z)x1fGe+FLAT__**^a-ro5`3FmKo(-3$hj0=25A_Y$FQk#Z|@&7y#fNslC1Ocl@Fud z1CT!*0!x3geMk=>hcAVLG27+S0FiW(VkgDVN>$NK}^Up@rq7j*O}3t zk9v3U?m$`L3ZwDY2Gh!?Lzv4+ZvT$s+(K8(yxgGV{EoO9D|k;27>2pSc%ImdkN5w6 z0>MeNf*cy9q5dR)x+$28nvJXx4u7Cbz=M`PyIzeM=-WX4P2d4qTK~aOiKrBe`{Bwk zu1`-Nhb$>#kT(%ahare1Fj$dwiLp-v3s3m?9eUkRopD;$Fms6k2-}r@)oT9r`9Y8{M=+rd1nyyeenhz4lmTRQS?X{C9?UI# zGC~}(1aU<@8)yKyuBA#bzvEmxk>cs2wIkMjY1@Jh+?JzKqb6Go6jKGkuvljQH~=~8 zFpVXh6i@-hWYOo?Qcy)Ab;^DRw^-cfRP5Z#-#IuPlOfif2?0$VWu!*RK)uZ!U2ae% z{$%F!3)m1GLuCm0I6&zCbO?dsAhY$@lqJw2!p81VNQE>4T@qy|>e}?eH@y?qDNc)< zg(eI@K%cA6>cpZiPZo-tnZWE^lL(iQ=e4U0G&vBe-#EC24S@iKIcyB{k>ou9n4%k( zTfFLzM?MRcITy(;bCYGkqxIur4GFj>mpl?w^@W?S&W0`FBEa z1eYBFjwNg9K#4e^w}J&D;v#X}es*jLRI6qA&wXCc5qPi!F{evD^3zTxV{fpj;NKMm zgd$LNtd7Z%2Ds_!GsBXZ`;rmeoM15iih$7wgO+vDH6=f94gbuxdT(+-EA*q*pCKQ= z!RAji?*&8!#;p(?wLyqfh;oSW(4)c@TKRimr)CWb_=oe)!1oOQ2n-YuA)J{3FyviZ zcW|mi-V`})ZLFZNB`08cepTl-Z z1#I;G9=2)Zu>Eccl>lvx^uKsQnhxw(Xk%9s(HYY2Pgd?(Gi2{O+h46??^&+k z%;pFt2NH7-a0B>DnK5#F`T?)CKC5o1GzCZSPaimHWv`yjYizJ%03*}dZ`X%%YLy`u z?tQcf6;6&m%AMGIoyA8RG<}~hm%%Eojdh|*ykql)0b;UXjNd9~i$0MfOKvFZtP5t( z0}#N{AOl>M`?*LiG5`8Vc^fp?yGO8uix_Vk_J^Ch87FtT*e4yDid<`V-@R%Q2m>sN zSi1TbKEr@sRcHM1pJrAR!7R!DowLfyL4gmG{TszOc`cM}A6`3Blk3yseub%G15#Zg1N>en z*=J%`b8(aL)cmD3$>l(t{7GDwbM*@a<}J*{wur#jS?T=x&cI!$>Quz7#Ro-O_{A=r-j$5}W8f-m87H0rTq z`M)s^AFBTc)tm3du41FyI@K3j%dPR}88W5{{{>u-^2R+Zf}8!XOdqCsXG(W%5=;25 z{^rqN%hi(npYxt2z4x5z(JJrX&d#tE*4 zkk!`Vs3n>Q;JRBeYv;Ek_O7_l2$onL@&^Cl5a?)?$(58tpxreKx{AKB9dE_zCw#V| zlp#-`0x(_~H3V-J%Ev+B5d7wwBYYR!A|Q~XZi*7jo-$+2lu*V4nM0MTi37iV_MSk+ z0Z|E2Zy|FQ!eCEo{9q*o_V(mua&~a)^X&2Q$*#+NE95C8h&W!KG#<_ixYmTffAy;T z$SGvY8!>c-#Q-nhJXTN#!L<&K+hSQa@K$%=HyGv6-gd_gwwwj@K~_vjO@By%Jr{EqGk#O9CVKSm1qf^;`yn0JvJP zL}oOce7;7>deyinP@FLj8c`}7oIS+I)ON5_qXa9BC0%O7c|8K56UL*FJ#LYD@)Y|~ zQx1LkB?(v!0)Df}Wq+BA>|rV)>su zaYg8MA<(z~+j$JX8hz~R4kIKM3BZoC5yX(T>JlPh!o?@RJ^-wFjaVUR9qy~oL0qt- zBvSy3g8@+jv(TB`qhh=EFh$p~A}1(sozC^ED$iE+`t@ z`MC)~`a$aDjw&E%SOYPh+?DA73F%Kp0ZmR9_d`?(0-80Ny_A;bA4pPNND5>uC`H#Y z0sLwguVE}AqxC?vxu&Fy;VQ_B2PMVci$7OjLPyUL82gcnT!KIQ^6fPRzb^(SL zw1OO29KxWfM4H=5 zb^KqHy=PRE+tM|vB0+%$B})UMB8o_q&_orLttg=6oO7nhAen9j2`WLdU;qh{BuNlx zP=p3la;6E5x5LzzKf%vJ8L6#{g>@X;UWmT?E5U|X2NyZTePh5i#TS0gYV^n~9W z?HY9E%hv3_Q`CYXku4H52A5E`_oU81?rt07aQ3eVl8sexu`wlwqMew5ZY0Obfg zNmw5;3|!q8`=q$0kev0{(gA1A1d_3elh?E*lF3dd9gpe_Pk5xFkN96~qyEHDb6J`= zk_bGs7*gy~AUi9dkkC&9C6i;AvHYVLinQZ2wDX4qrb#y;St5>i%Y?+=Sscc${Y>*F zlP}U1!P#}{OC9ym`1FkwI=eAca3xJ4XMf>BBPN?PofROM%kN;rYq0WF) zSuPL3^^DcN4DNOweILcclVoRy{OLdLS~sqSkcX5J5<>-2)Pajw1MT|I#dd{+gN2L$XMibUI{=Fh<~80H*w zu=ri0TA)fpxRMUPea;Hy3J)B}OG)ATuQVHfIZeC07I(Lux z^s9U7D8+gMAR&uLN%_A5I8IQ2hT$#~7f|f9^J%Su1~<#Wrmil8TO*BVx#KTYnLE%1 z1^%z*qx80cM!DgC2N%WAjDrjb|A^saDn~Gm-G_WUf3%TI$jTDo{j5M{)55b^ z#Qb^z6SkeFpGL!MvN-e9kK#&$iafHT`Lln1gGlo~zrh0^DaHf}alKrIotyt{BTq+N zh0uNa%BuR=Qbk*Axupbt=QWS9<8`VJG#4Yx>HiFo|C<|7U#PhPA@U=KL;7z&ARRx& zf7wQ*dUv!_8YuvYpid&wcA6l|ILy~Z3H=t`md_UvaO-{ltN?q6s1Ga#GYSIk4XM<* zK*dD^iF=7y{4_60;Q#&BoEPjGn*BaKGUCwOJd;!%EjZc>tQShG{b;H2JI{) zUK$kwwHyQwZy@%V>)ih+u;{Gy;}1<2z6XvMkL;5fepk|@y=!%!u9XL#F=s`g-9yBavj-v6x!s{u!dUe zX~iTRv7q#QR-EN>JXy@`v+9~4GtSb)olK%ag(YK z=+Z8`(1k;X^_9v`P%SynlBz;rqcnm?fX)_@p?3Br{9iBDU^OUI!0Ie?8d6{F*+9;0 zPNbhh8(O_!{-FvxdcHp|Lwyr~3T(i>bbN&WxZR%4`6#DelSnBMQso>DosyL~eN}{R z^~YHcz-vdUjXe`cES1i5V%vM~oaG;5jD$;+fEn!m0Z9!r9l(ox!fiNNeXEr-?ItA{ z0k#x*eoR}L<{nS^Nx-?!LVf=rMj5z=Qd4kmEUTMP0mk)R|Kj=yld1y;E4$(D=mNr) zX$2A@&~d63GG+0Bn1n=uZYdQS-KCDUjxRQP}_|d6EobC13^0~C`h`al$JQ23+_2bfs3;%8Xqm!G(^>5%- z=3Qk}4nkFgrlOkvKJ&^7J<^#^YLaqFEEMMflsEOdX{^!5@f!&Mz9k7}qr&GFJI|O{ z*V&Tr<$|ZE+jgr9i3&etE$Aj`6%#|=D7@8rN61w=kPCE4ZgY7Ch=cNVg_0^AA&FL{ z?Z~n>Az74FH&XAe5W{8{q)0Zj)md%uKWylC>X1OIOwRnm(oiyz*X5`fW$zcB5H)O5 zVSmqi+!%9c277;9*ij0C1u$gc9#cl0p`nF0b}-Zqq!O|!ulEUDzU(Ll)Ef7S+mI1Z z!i9SnIC6jDEGHnTtbY?&SItKa!JZ@-AFfj|fkbn6Hnz*!o3~6En>lt-3UNP?-3!QAE?jCdpf=#MXSON2d z_buS_%+#OHv_usH*G>^yUE!v)2vG}add4fyC9l|4hpHf%kQA7ZawWNmb;K2eY-7g% z>Jcf^6#ri=NTJm-7CeHim-OP^D#8b$%UD0Q+TPh+S=OGWkBnBuy{Yp`5}{N*7OS)4 zPgFh4&(dYedbKRQanPF@&dyj{zjMWTZo`U^I)Uylm%x%-!p)zlR`=2Lc_1=oQD!|z znri;->;L{v3EmrPD{5VbO=;I6?Y=(&q~Ek}K30z&Q}!%~n(5K%kyVlBnbVLXr@BJo z2lUs&P*ib?S{pj4FPnF|DWCKpK#&UOQ-Mv(PoRJ${U@G7hJ`vAl!G9_`pNIEK z78D&Q()elWqmR-IKjwXZrAwfPyW;=Ft0CzF6B8IA-Hd#RI0(G&L&#;X(q#DB;M&EInK__>QwdBO&_C23rQdci4)X%FoM7nq+#L-^?tx=DG(qb3soUnV6o@b_$`YoHl3Jgw;sw~jd(+Tm*sh;*tq;!vhE8=)vGRyoA(iPEO(9mlt zqjCfY#}UOL4=f)!u|=jRca!CW(zTOn9>R z0;3jWpyvlV#-$0U-K1Z7iiK^BQt-j3m!Hg&eVVTsj+n{>hCk6N~Yz%aozT}K^_Q`uD17@z;l~NCixa`jTfLMQI$vF zG6B;5vPj*RfBVnHzx-#e0{rJcgLJCoZm3oZa<`CFB%t4YhWk=ScK}FC6dc-qiCp$x zYY@KAH_$Q3$ikh(J@Wo_RkoAo$>$$H5bMLN=l#|4`;KqJ+Y;3|KSuD>Uxlaz-i{Gi zdxHC-v`Sn@%U8JFss7xcM4d%0c!b6vCd8`(*U3?+G8y%*sUgSsp2pHARO+XVzF$dS zxTa4{BvhKi6I1d2m?8^Q{h@kJ>a2j8IZXt?ff@t%__sVAJAx2cCTpJd{34ed{elq11*L1ogZhu^W#%x^Ogk==1sTma&3JLgPsq4 z$KSmyD!`jG^%{gal6%Fa3!1tvtiP$Hz}**kVph5YeFef2b9LjbLtmGwfh~KnH*cL|h#F+$| zXWa#wmT7%zK6PIZ59L~);eAlDJ$aUlVU9O}y;a7)7hj(-07^@LAE6E0E{l+XksV0m zoJU}Q`q^pFRW40m*vyXDTrVd~s6aSGLcT5EQG?c=sWVhC3#1a-lSDa=D2 zLT=X)lZ2DuGK5m9_bLrJE*q1Bex>5Jni_;G;f%3+nWxZUIP!|P?m7MN49~H+tw<3{ zMcYwer3k@Kjb_=tBa1H3wA>#dPdKqC8uUwYdKx# z#gDXJwUohQHL;ziesw<62bjlNj}V@{So!>vQ-j@I-h2PHB#OEUntyyNxVnWucoWC8 zJH}{&eNO;3fjb~ivwZM?3LPYj56Yt|Bkom^acFBMl0C!?ZfD}Tz4#uKcYo5$w!3R}SB6&I zrigW<%$UmYz@t{#Qs&T-p5uVQ!#d38f;yiP1R%EU8?go7T0FI8#??7Fr!n!6n zpwx&!_yVHepKoIN#U$+qxmZ+J{mxkE#?X1WiO6*;5lVT=&o2)e>PlX$STO#s_AF$& z>JCTzD8#@PWKI~iKF3+NARdKJ9`H;ct!QHzF{|69!>B^0p$p*sMWA&am=MvnX#yw* zNa}XlG*!@@_6fL@HLk}OXVmMtI*=dJHE)xjp*_Ef_51M2=G7Yo!-SB{`XdYP)%+UR z=h72U&L253-q=R1T)MoYS?jS?HJzyHa(h05vBZ-j-*#oYO0!GOrBUR()24CK6FR&R z_|c;98*s5mFQwi>R*$cVxM*m5NNzea)LGvLa^Wi*w}>%x7@9UM!5wd2JhCP{-kw_@1SVx7SmzuUt}n)%4p{ zy9_daAG@HO85@ZQenLmw{TAiJ#eq%mgsOb`hnNvbG-#ywk38)Bb#Fv_KLt-X=?;(K zVP1yZ2AeS3t*0sN+an_Lk&5CGyun^`=a!!T^EWuJhzW$mX}-2g|LZs0jlJ^*XUBk-1tE0C)C=W5Ke+vXjd$y|OkK63#2pYml z(J1_K3i&#QE7keGMy?t}NJWg>Jiisuv|L86Fg9+dPjMmNPXyh3EE{L8=H6Qi<22;! z?tlp381|q)>ln$KWq3&;=lOk|(Z!ghV-^Xb*z6cVjAi$a`;rTSQ<3Yu@MPN&hQ`k7 zch0)bgY{n?o@kWtJ-6;g37_2mm;aL6?|Rbx<`NJ!_um?2lDNQsqm+*n{3QN}TDMo0 zloW*OHH|zOS;VGfd(ih$>`{BO7azJ?3qI_%nHV!oZr|fEq-}ff;jym6zJZ@1Hg;Na z#RMYzd9KWkC9%AHPN!m0v**JrG)wmj9^O-Mt}-q?P_FXL*M0+C{jyUm|9P)`!?Si`p?uttqjB(+aT7F;zvYeVkDU&cj8NCj_YcreM zZ}34+e-NYmxXy_k7JsdMV2(A|LB*moeUfJZA9P_)Em47%*mDr*JHkM8J|pyFjeRB> z0)DjfN0raW@1yJo?bRZGmF=a4IDzQ$E+!H8M5^mNGeA@{9X+C4cenGSmNM-u50ZA> z{PY1m?@SxVPdQavD*M~QO?eDVv>8chFBa%lpLh`K;(kSnV7W$b2INSzAiaL?<(!0? zYu+@vMKBKa(o53v+X0HAuQG(O<7hLnOC=kF#==jQY8c_QNnc%wQw7myVb(rT(}S7H znwJjiayFm6G&VNvbyG_vMQQVCJJO@#woqt0(%%X)6q+o*XDEI#e;M>M6u!VHQBFHe z+xY!9EMUyy!1TEUGG?>&l)>vW5-me*8On)=>r|yuDl`D69Wps5#Pk9*DPwhJY>Ahx zy0Z}h;R)|VDGQ$6B%2kuoAV$^gNnoWcjvr8%aULged(n!@&ol8&-yMjBfL>O8cR+0m8-8m?R_C0h z&91uk<{KK)Z^F$)9Np4Od3Y;SVwsVI;~Fk zmcQSg5XGt?Rt%mcE8ID^>}3hRtZMzNW>|)`uqC4VpyG`V5o~rT1J|8B|IJkg@0&n^ zS-EpU)$`%KSJMDKG?c(+8MzgZ4QKZN?P1tlX?eF+m&U0Ayg;ZiX#STZI$KJHhXWEx z9%8?RwPxEWWdye%*(@V<1UJd{T^~5zL!+~g@NjnAK4eU#a2>eA#nV3#=?{bNvSJ3| zHSTX>`6zu%-~abXN`(FANgBdQCeK9w;7e2(>AZ7d>~)ZaYJND7Y#m=uY75rE=7svt zwXj6o-5h+}Wj8l`Fq#u1rB&ufCO@!S% z08PDoG+#?4HoG_3!%Zp-gtQ_OKs8hTeM0rieK*yQ1xy0aPsYR?azh$iv8FaGspLP` zbq=i^PB`8xAssoq`lRj)g+ZCqsuXF?08mOt>-bD;68JGpW0tr2$HXM9rpdFY|5_o^ zoMq4VbfCjB)&h}Sm6C8UjZ>ROheqXRjG5olq-2Fuks|;-XwnMb4rBeAytAEvG-h;U z;qP9x-qvYKk434gtQ^ZV9KG5$^zxv4!Z{6}c4&C>yGb1DxJl~-z>2kEsgu!yg}?4& z?h?#oS&&%65YSVOI*Y!VU;le01X@qy6;8_j>-$gImUA;ZV2481R*TwpW4{`Zv@@FNVG}Kmq5g$KAWY7G0Ia9Z7PTSeP&658K4S|5K z$4wrm9LSHbG(65KrCyVFXXpKWypjcJ;(`O2U1%jRPe`ZoWBYhY$y#vd^|)RwFr=fK zsAhrfO|V+ypXDewqL2#;Le!K()CxyRKMbls=y`5Rm7P(4S7A{27Vz~&vy^lKkL+jU zgQqgTKhcGE4|=yAxNLFSF8;k9{}f{?phx=cJA9aSjz$CIeul=t(o^VN!%xc5mN9l8 z528@j!}rHbzKb|%e>OA#-4 zR+bb8hoXSNUbSA}_=^+J>+^NM8|9iROqtzg6=2AV&YL1E`dC)(7fDE7U$)t+kIq%& zQ!w7^s`|XF(6%nW?=tH=bF9tgC+Do6ERXu++Uq5jJjp{em4Wq^qy`!i8;Tl0OC@TB z1aAT8co8|MP_7^0xhj&VppC7G0h&0A;MXaoif5=vt5(*bAFxtA&Z3r&NHLo+m771` zyl866a=JKodsTLQlybW86I>KQgHVwnn|LLPRZ7LPicY<0r({StA`bn*3f;Ln3a;T> zGo)3To!RvEM{MzX4Kyc-^#Z8{)q;d3h#>*v!hTXm4Lnpx`0DbvhA$TGr=X1+=pnw^ zk((>7i6Jh6XZT!GSp+o_1nU|JXVA|qccA2RJYt*&tv&A-?l6IU>T4S|dh{O)Vi%>P zlp-*WF$FiV_$I1yxa4%s<#AF?+iARNQeC(0iAgy%JF$&U*UEYso;QKY>KivBj$Kph zNv!zsfY{%ioV~UltNOTuoq3hv}lXeZ~W;4q<*6Y~Fr zuP+(S$($%{d7N{#Ta*UW4z3sOrzfNA$Cc;Op*kEiy(n{6ELUFuL zlj!VReZ|o@6u!5}!$w%0-3{90;ftPtFAB%TtDPmWe2WC9ABU&pI62nm;8}!XqC#7L z$5ZYKKu544^CeN5SLiNyHixuOZlN`6RRhKcx9uq|OtwlB&N!M6@n8sleb*fk%1@|? z-^ZBpQgO38d)ZAQXVNb}uRelQEj=F`$yHph;w<&_5iFTHw~-)@9xHj`U%7EUsk7Jj zuS1l^BQ^Eq09=Dx4s)E0O|Atg&iBeA}AF`G5ddiYk|mUSh6t0#67BN6q0e4ZlL!w_R}Md31y`mBC)-Nqo_MP^N+Uo zww&m?1hp*5>lNz(^QY(B5U7h@4JlP6htr?r9H$iUe?YwCMdx0dcARh3yW=y`_9U)q zv*S*ru7mE`6-32#H}9F+6X)<_aYm99j8kXvF#mIh3URik}vrp;Bq0 zK4#9su+y&}Kl<{Z@-fFfP!E$hmK7H8>C`m_YOWP`~7DmmClh)z1C^`DWlONyhXTwyRheHB+`BSNI}JI1>G?{!%XM5@8;8Z(9O5j z%C|%G)?)0kNbn-ahKMOz-30g5o40(})KDrD;o#v2kO`?Vsw`ExEOK)`X3H@QgfPIQ5 zSjm;3vS=r!zT&y%X$AZ%78XjoXMAsEH&1hzBi1$kN5om(R;EeSUE)+RGZyBvI)^#b zT7>Gm(r>qYKcM3vVnZJ?gYcGbQm(bxf4Fqwz929t)6_f-qaM2ekULHZAu!zf%KjO( zx`#XkF3T zhU$B1qL01Ylb~!O>*4FGHw`BRw@}(Fa&L^nb>$gv+9?P>uqLl@| z$H9BwOX!CVVnfDWahPK0i}q_hMFt5ZkY)+(Hs7LKTRI~HMHu&C08qFgf0fOzU2^}J zPR@$hWgK0^-CT9x0sBg{bhw6+vzts?y;iOt{lo9trR>GJ?DEX`)`R6Ikxbo2Mbg^t z^xZjYr6*PfQ3EO6TDtP1yZ6s~BXnZs%tgHhghH*au5UV5r>n&=Lwjl6_&AjvTN$6L z18?a-*oFw`WdP%1%%<)lRq`vFaIEA*4W_EP_l_kcWK;1w~}^; zP%ko^gs$1&#&fGt9%`ve#hY|fJHZ5%ExDA9x>uo|$Fv{mzA~i}->Jl3fk5#rBqJg- zXz!K1`~zJ9O4FUT!9J6_drVa!8kDHA?q1{%UsTT%)L|7T=5DY2lIJ>B2x!Q1aS1J@ z(PJtt3u|Itupr^ZKrZPF)T0+y>ST;=v${KfXzmG5?`}ArfR$sU^VTI6qJ#ALS-1H= zZF@VujvPEBFQZMY8cw#C1zs^Owd5sNf|$KlZ7ua(9+=ytC|$fR?K03=eZRaW*_$P( zDO&^Rq9t0*$PM%SH&8;|<(kXAEK>iM<=I@>pq3<`Bus@7+H27s7b`*30} zg#?mBP%^V9YPS|@+@)^at_7hhm6h8XMXwEv!+DhFr~xnfsVXxm(Sbx%Y8X@f%C-mf zi*e|4OB5e}Da+^YWn5wtvbE?7;8{GMDi4P9s*_Wr4c*-Qy#|Maf7yUj63Tx2<=)BJ z3S@K4VBto_{vu{J|MuQg!c#o=xJE$!Y(T+@^9YD^SrV;2KU)&rh|bzpZGU}eeZ5It z6>C8t2ay_((eu4nx4OW(Xtc8vx8}DK&+q z6jw@aGMW1fbo9k}zHOIq6DAr8lkd&1heOBM;RqY=m((OzUW8gS)Op)#QD~uY!#|jf zMaj*y`VC-kRc2J{W2#D8G#62iqF|(@%g7(KlZG47-&-6iH$543n>~2C{J}Rr!fjid zjUFUM_2OvLioY@m>uMs4h&Y{R(U+55da<&HVW9PQ7js5X7Fa!yl}Dy$`pEf%vKq^T z-4fM8Glon3V7PKwRns-lwE6RVm46a~+P+yj3}&1TydQ2ZHk9DGabkld zc#{s`<;UXVOK0#`nCW0%QsFU^+~8LldAj-j*@$pb_d77LRLC5!KqEj69?C0e_Z-;G zw4eljG;f4@25(ZO2Q!;Mwgt+;$uqHBoPG9Vzo1h=bf{nb#{}ceW3DX6X}Yq_$IaVH zq}(yNnqM~w?>dS3N=M4cfv`uVP}tvVh1d`bal{xSl@DSz%qckq<`>VnXb*o=sCH)| z%Dt>GoELNu!RA*MX;A8D=6|3g>(21TwQnL{A2v2jwzI3faPgU3S$)kUeWgngvOUMWsjHs*@nCD{sx> zr*j7nG2@s*xy_Rs4;Y=7PB(n)G(=N>GUX7BN#`zcxN%Xy3gLJKpBpc@k??w?ST9$Z zSd9Y)#)}n+oX3)vocdake(_T`U&_42WOoZ-gvx!X|L;x3b*G9@ZVU`bAy)U&kfx?o zKWk4E6!h%=%s=j7T*Q{=lW0&!Kl|t&!m?1P`cqX3FAbA!Z8#)B9_7!@K{la=)TWW> zJTEU(*k88*`azb?SE9c}tI?Pdjq64BY1*;t?pK|gmIs{<otJy1{9I%|Ks#$271Y zHdRm&dIsr#Z)huUIF$#H+*N;(3JXO5YjY`pM}Ggwe|W-4fjluo6k59{{@aWZk)DRj-XT+=;GGnE{xAO+FV>x~6T!~6wf%kY32KLfF25;yhw$}d zi5q=Dx+|UaAe!EWh1$);j`rAsctqhS z*GD6+@V4s+1k;oB=fvWB2;D{4o$TEkzwb|yM*t?$HxD}PvqKU=<&Na^F=~MstvM2k zC}OyNJJM2fc%Ua8aYTTrwnJtJgb<%AyP{xZj8L1f_iXkb56|{*-$5=-s{@t}ePB5|~N{nmB*!VARLBHUc)iq5Y@npBy0?r@YJx&8ZYuu}OeHN?!9J*vbmwT{_<8 z++EF*x+oyXYF~DRj*{hJlm)16V3DL|&$*)4m(xf+(MM>4%0v!hDfeITO$k}Krg^y7 zJ?&$qUh_6b)6oev>^N5v*v6bL2<+A6V3FeyUKy=OmvgG8pb4M{zzlk;ysYE{Vp~qy zQvofr1p#6-DpNX~D_IQ%vv3v2x(e>9ZW`T4Iw^QJG5 zuOu8$%rzD*OcQ~cu>lk_avNgexoZp%=c;ks1UCX1C(2_;g-uAFf&u;=YPblDs&t`x z?(DCh{`>fP35oC8z;1VL4pL|kFlIR!gBxw^t!AsIx4xj@>{T(tVC5a`JY2|p!X=vj6b&qEJ)JUT5hI%p6SVYGlG`PP{n-HUvfTpJ=&>p3X^r< zDMiH(vRqEr2Z96(LqBMGa#Ne#L*>TL>>XdfaYVspjX_vm;Omx$tkVu1isiVj< z$EWFu2I2Zu@f4p_!w&Ng3_x#|oD4h&VgP1-ZOO+VTZcwaY_i0o8K~ zCVAz3%qxqL6+_F6P=-zLH||zItngIhL)J@$51)0$4xX4((#Nu>?mUyY#d<3lpP?xt zox7grIG64c_~<@^VqZCwNMIzIbiPSjG;<2lDZrihd_tqp#QFTsvr*h|);>^lVZv0% zaGKN_^wi^lKzzgspq~A=SqxM~`qvzL+aL*nGHEu4w*AJbH#q8m4ilnJea`YJ?j(GT ztMfF22}$t~z64UFNz&u^{Gozps0yLvI5_eKZ6_DC#=-w#`&yDUdX`~+VxfKkc_%9J zi)x~fM#k%8-U%tJx3Us(GM6Z?X`cJZ8C598q-yrdyvpEe(@hS)Z%xU5kTm6mAhhZ| z-gubtn9W@@W+|Klj!pMFw-1~b5L)G}Qn6w{Tzghb!a*nxjXp(HUz=S{wm|g9jz|om zvB27#KY>6w|3R`bAe40Vrx~a9k8J*4>?QT?J1ON$&@gZHZ}TV+8olWBVP{PBcS%Cn zaE*PzH^8t~4xP(2wsK0rh8KMfHSb|P($9Zvm$c%zpR>Gu3&&3t>o#UPRc#|JZhpsK z=@rF3X?5HJ#f+S%>&7mVw4#oQ?!7;TCHCH(QlyfYvt)q-4B;+3Xi;K3sscr(jfbSr zqSs&fA`LKUBY-(3X05}nvhiIS)@w|bbQ;CB(smpGgPWn$l%1qEGWm@3OO<4VmyUo> zisA6!;9TG)Wq;yjy=drk)##K6DgQJgOvb~x|9uICY#Rj| zuS_^APJMg-vp)dS8(C>;jF7AljfhgwqXDA0j=H%W=EzbDBw7XK`Qm zqpQP=Z*x1#MlLFjE&Pu1zy|#*%2V@uwgO8~5c&g0)C`m<7ac}5BIiWQf7MQHehzS0 zjCT~Y7oqIhnV0(YCWM@4wBewmw&s3WrjKY%Pnyfm!nFJ>Y~_sJ@?nJ66+jc1LzM!t z(EA55d}lOp`3^*#r1)PY+cKJ*zO5-DlnR=XQ!yZgWfM4o;|Vc1j7jaNI|;EqX2;pI zM4dyn8)V+!zZ77mYHkY7CC_b$U?eUIl-L1F3&-sw%-3ci{bo!&q1{2zADqCI@k=^iCEr|8iucQ3gOi=&IX?@ZOEj?Qvv|2j2LmNrN& zr>-@Zs4<;3O*XZ&L^vQpEKV`1`T1c#*T^Ybc49RniBW|P-B~_%1i2gxP&w%q2>#HQA&-%;r1Ohp#T|UEXC}bL*toiQrtL4m%~)FEE}% zI9uzsb5`Hc>nI$Xl6>JTH+HMKg4qy6pcOds8#q@j6VCy8Y9V==Jdoe50u4$aG zTEyA~UhamccZPiu{NzP<#s9h5ch$@;57!C>Ho_IUwb{mu+mYfqf2@o+M80v(_EZs< zRF!D0wsQP1L!b3@IyS!ziCM=#$Lg&aS#6nm1Y}!ko95zoK2C*bJnpqWeg`?l;dO|z zB1zwJ?7A#X z?uTCFk@8d=L0I+h6k3qErr~^8ag!%QVz91U@T-Cx`tXH`b7hQ>wJ;G4eN(p__f1A_!^Wr`KjT z@}B0zTZGpzs5p%=ALiXTkg(J$g4JD`veuoFaUCSQwpL`i(NmYcnsuJ2uSGjIR=glL zlo|X9p#6`+PR~TJG+(W%HLsVmaHfr1N0l^QZTWJ(oNAY5G6q0n^ppdtPYlV~y(V+$ z{+VR%QMK(GGBrVZ^eNxT^lJrMkn?V4=bZg?Z?Xo{7b6QRuM(!Yo}%w?*e>+>M_ z>lioE`fT;0@8624weSTVk0PyijY zF!Ew{$VV>Cj>`hk$XVhzv%=ZpWcTdSbIT|0Wxj(8VSXwSMv;#}-LWQ^rP41XHxYMQ z-_cxPek?B;jLUc`hXLa{aHAg5>I$E>7f84!r zhBcHO;c*ajf(}j}0+8=d^Oy`>>hCuni4QRdnQ}$!0L|aLN>8~~RHL*TYUbk{pqbk`+4}a*^jEyeOyX&YZ?wrl?{~fvybWPeT-T4SSS<>VW7cxz zo(i}xk=gcKpHB`s7gEEUk6MxqezJhax&-QvI!?HovS~ zA&%8^mQ&46+=a-}{8wb*#3MI?C9=oElTqs9&S@xZb5Zl^OhVa3hsE31N8~_H8-(b; z37b_sEwjhuR7D`trWXPf?isT7U3WfL5XXLki4Cx&dRodV=yj_Kd>RDEpGgTQhl#HI zXdhlIYU@nTx8IMIqLeDQBJOz|47-!~SDgGxI_wzKBcL^2>VKCu0{dl9-(H^56RTnK zbXK#4)d%N^d(Qp3bt!W>;_FJOZ$pyaVL!?E#o1iGZA8lQeXNE-ZG9@9@Vcs|FEXd0 zILn=A9LXkDQa&TrN5h0-b(g5<_#Giby{dk8>Xe$(cz%m-Q+40`itDUaBwh}g>Fd2H zNHc%xi@@Daw6uq$;ob8u8~^;bjb|r%c}!=PDXzYzsiJ6|Lgwt>JIzem2!Va&Ur{A3 z9@S^xEk!pMsX@4OrIgO7#x|e3@XE}+CMe>OYb0gn>|EH7JI%D^Bi0iTPAW8GMgQv))n9Xcw1c@wywBzlsV|rXTGITv=AtmX#*aO11Tq`t9|r|S6JVHY zWf7uk!MHg>s5kfYAn7YH`tQzathugvm=?}ree6gdim&M`x*4;+TKc+3{{*Y_6!Sr@ zs8{kvm*-_ACw!H2-us1s6u}*=*%=1~9jrUuSz7H|{etf5cd~jX@FrGWkxy^^X>7|E zvENTlh=&YXgBFOp)}1+>G?=|j>0C56{=kQGsWn$bHfQ0~m$%na`|#e4Z{KRh+DpCV z1f_DqWy)eNA*Z-8bLfKoeai_wPWokVclgCaPa-7qUSB>~8{#~Og}AAma6C9d&)sqk z8t-E=h5|>N@{YdNR@;lhb369BX=l8-#hE!``O*2uQcTKw7~;kB%a(>kw(61%hx{b- z74=PqhNsrUGSQ=GU%!2ntsoG)jQ}|a~~!m zC^T>O%NaRPlz$~DV)WPwbgUgp#HC18Xd7EF>$KtGG_2iSAbMu&?VqhN6;)z(JNf&1 zFkUfsfBLHoAN1KscwTr355k$tW7n>uVes(k{q;?`f8P*Jt;im5Bt~%uZw4b4LK`+H7zPSk}D^1spzb~kY@nN~>9t3A8E z?zhk;oSGGh&m$5{*RVzO?&A?oF>RLnQ%2?d7gWOrpFQ$_kbJzqh|snORV$Dhq^D_{ zeYY4vJNK1h&85bqTpD~#^LlN;+Yw4$7c2;%jxk>uAwO%FHkUYb44Nn(2IL>5noqg@ zj_C86#E@SRuce5X7DwH#6-IL*AeLsJXSol7_s>y_fJ4doW{es=sgBxW)7w{TY z&hj{zZ~&n3lKLNJ<@R<|Be%v*)2H$2Cq>TN$$2GZSt2+qjms0sEGp&RetV~0eaEG; zhC(r0zP|%`)u77syTbU_$LtRZFk>IXGOmcHkn~oPymU9G+Bcmee^!hXj*19gq+FBE zJvBPmJ2-Y`5!5+BZg$M$lwe1eC}kBOTld4f*u^f$ecsf+{p)G0IpVQYj3mr-RR6r+ zJ=Jo6VS4z}7rSiFb#HU$Jie4nVa09*Ze_PCZGw}kz5%tlM{7|}9c-IQg4oYqJ7!Rg zm12?qmi@;{tnv5ag3rjPX^+sFd>e#!96u+AzI|1o(g7IN(0?*X2>b87n(A2VT~LqT zWR(5fDT391E9F`PcB-Ds=r~fmOQ}^OcdYyJia>!u#*+%S@NzB36IH8U>(?eMSzOSM zGp;Pum}b9r;%7@WpJAH!i`KH0dn=LCQ8_2mY-SXp@p$RY&l{2tr9ojA^oO<8y}fHi z(a&0Kn?&EIC~>+7*JQ_uGUmR_j(5m4Xs;T%&v@T4ZHwkDUyT)t5^9|LI^-W7DR96? zNN*7@o$PO*WypLWH=>Xl!DXZV((9IxTYo9uq%xiKX&;<#8-;6TuqngP6gQ zF-A&pc96Un%Rel4i16lAeAv(4qj6Igud4u?P61h|Yf~e@fA78b9J%COTFq*Is9nEf zd9m^9ql|ih_#+RAs&k$Tjb8%uc@?;`?1fm>;|&_xH?=#{;~Yh?{K-3(v3g+5Swwci z-yhca?$p%JT6~5$bG%ZCRDxu5iGK2)Jwd*0 z4WzASyXI%Mu3j>6>bq@wPck2D{KIrji9$xycS23=n$4Mnv1YAfJdZiU;A@%EI4`` z^VPyo^t-|YxL8_>5T1y)Ceyw$F5*Btjk}ZDD=Co|?xob^dC$tF9Tb|KBLc6-B}|tj z;)qd`F+!m~zjgKY^SMa2Agx8jcI-!l*5?(EiTUW*=H(3x7gMV`WNUpb7+2ltk8=0( zY_{aD8YI7KPPg>@U*0HHYFG+0GKa1#90Hva4}P+pqH6}3F!7US=4-eCs2O*rIIfE( z(~`6_G!JnFLqp;>Uo1rn`tGUV(Df3c*^h4bFiGj+uIPh zRCc#oPDU^+y{_xEL>yi{j}*hbkm^{!pF!(nR^ zUpX94mObIFa51sItYAOzmH~SwU1Rgf&=#lTl%Kw1pWq%>5g$Mt9QN@pgu8f&Q6`+i1OU};Y&jQN@`GC1lGDKMk5oU8MGl?7>hTQz&at|LgDlYWnfEXSV-`#u)c zcZM~lZOr2eqs~4@SLN2@8`s03vSpXzEHcT?x^yfkN8+)rSFmIA;|x2eW` zz?iuc$57rjf7)K6Ml=8bA4bliAIu8l>`TpQKU>;#rneQQWtAV_q6*DAT0ZkQsZp(3 zk61_~@2i=0&12WEzuxweRk!t5$49FE85VPd2v8dtB_neCetvR*?=bz~Q1rd-AKe3~ zsN2;t(A?E^r)5i%@qLYI_uS}ryDO6U5@APs)tmENwElC{Czb`mCXvuK0_g8!&F4Dd#U4} zR&9xOeVk5xwBRmk1NpoTB|&X<)*ox)>J(4PXjI&Z77Cl*q7}iupp8Y&^(Z8gSrb>X zTZS%Yd$~*iSO@sNf{>e+CS~7G-$+xbm2PsnjkMxET&&Y+Rl%NLYa*0?-a>M5s7Y-P zGOWI!%eA$pE!}H&o^f8S5**NXk6S`%r&Z(0A|9vX?Bfg8mRFj_`yECloTmMa=i^@) zo%*CCHZ?8;S|s+&*B`&A4*BP1l2D-oyY&Jfij{qhELwb5y8#HiP)@Bl>>Mv4I@0dl zW|@71X%iw_5JWa{*?YsXO-nJTJ`;}PiQ2`uquGg!3Qu!T?R*iPZ->renEWNpkZ1Iq;#LqC)2@GF^=APdAiS-Lj;4 zI`5lBOEA#vt!i z8>hWVDdKkoh;n$_gM|@)SL|Vk6f|1=hwpE(5*f29+dIqpZwNeWyWDKC`mbHZhRA<{ zq*1r#v;a-@k%sZeO5FDQ0h`9ne$O1kmi;`Khr0hxB(JE(tfI(EPLF0_b=0)~SNVhk zg+i9hF;-Wp1n;O?y`m4YV8d<6^Tndvw@4rQ$+IX_>|j7&5|xkv$F1*t4}njVnFr+BD_-G_J?A&`;RO8!n*_MP^s-)WV}K#Y$36}4y31B961T5 z-vR?ZikG<-UVRWLvCr)^!oAXDs@}TINCJSr$MOb;3ngN^P}`PwhYiq!#y*O>sa;lO z&J-db=j=`%K_@@SVQ$I-YmnA{*ylKOKKRIXN~xD~-(Ju_`zxO``Rn2aZ6*xEHDqdL z+ng8Wc^(xgeU|*-H&-b56qPq!9-mH_kuzqw-CyFvkcKBWbZ3>CrlK1!A(B)VJK)hW zCSFUlxYDEas94GcwwbTtu)m-%*Rhj0aQ#wc8`2U~3NCI@;g?ST`kaWH#ZN2HJ&7P^ zp<#CF&k%(1xIFIJ%HcQ3Rtf1NY`UvQu62>#n0i?Wxo88Nqh&cRxd}+&=A3UR4b=X};0sj^!VUR8`rte)m~mhwfh^ zGSE@W6>u9je$g~MB6zzvCo#l5SdSUgle1kwXN5>++K4r_F7t$bOTWXG38^S&;@ke? zkIYzd{bMGc@U)iaJe{$)FVXzv7^UQAq-OCW&6Qcwww}131*M|V+@j4ik|@_q0tSIpIxlT}+=rhWcxPcoX%pPJSxMTlVeklRAlW;-PY%qO)a zHz$@m(K6C6)#Pp$^Vv4#RlA{^h1mw_Q#Z}7fP(cfE z6Dgjx5D$Y&xWJI7#Dlpf5gYIHaY^PJ>gH|Wi^g3$FGR66aq-ypk*su~@Y zckivcXJZO=X#L_*&BK%upJJroS#bIEk~nF*TU!E&?T;ngw@_$_A6qwezht&QXAK_2 zh;1IvGrVD~ z7D)d|d((Hoe?(DzJiF{3_j9Qirq;G4zUN6Mx~gasAu;{4BrOfa|7f+i_Q-H6GJ8>Y z=-k6%1{n4;JM#j%mt6Q&AP4($?tKS~!lz8dj?=>VbV*B-wf<~70qp+Pg!6Uu`nJr& zN>p6_*}i`iMbH(5wP_(5>LH%Aj9*=|m*>h;x7Uj8x$)L0_MM%1iEV)IW{Jrd?q#^e z-Q9^K9zIJG@nqj25W>h5Ap5qsHt#8j4s5bZ_ITJ)Jby}cA<|2PrSO-CTl+D&=@yj> z+174h%e@wefSP!e(6RDk=bp4uDyTgzt>nrg=L&kRnMo9_RwdT)-KL%~t#1kz>n*N- zEiG{?rw3=kDix?xi4R8&H`Yji0w>5|%{MU)=AG3XfGIYyV#-3;mO_`UG` zxj*;)_zs3)>zwCv`Xiej@H`d-bdK$7U8%qT(u4{feU(gAi)IDSYXlnt zQs5e4s}ErvMb8Fy!SU0ikH4s{@EOM`{rQynQZw(C&7sZUW@%TW?z=G#*^Xn5k>{D7 zo7kAje}?L>f@CWGE{PY=8)b4=z1o@ln*z!qvcLo}fSJVxycOte-MSf8?-;?hua-cN z-G>VZBjO3JBw@;}_F8lDih#U%%7ePVm8A@UaA$bxqX&1`Zwfe$K!tP5 zZ&U3ulLWI5d>mcdUE5JxQW5XQcz@PTAQ+qq;X*vg^AmcHf_bA)6R_RK?wVI0e+cBS zvrJ(6+KN&B-Mu!zQ3ZQ0E&V;Q1?6%Rr~_@p%?{Cqjxt#kG|ak;$g1u`xqH zF!b17+777DG-7Ohi@gq?*ODkNsN}+3=wgR)-Q$k>W;_afOIr~~Y0uG5gb3pxMo$Nd z3*4#w4ZR)twBD{_Ai4E_^YdUds+z&tm<}(yq*OEJGUECNfa%ugbqD17(bL31@Jk9p zgH*XEJdrWFXa-CG$1L(=%)!V05qA})o}fEvOD}MJEZ}Y2+8L1uDtLSuXhn*xbdc_=I zhMXGT z`A$K9vuOnotY_p|kjj-2!1f4$V|o>-;ZB(xM;-!+P(_}Wq(S4(3DKOV(}dG`w^3nl zCTt_S7=+y_zCfG(neUr7kO8wRU#KCw3rab^2&|lff=jA>k{FMc?Da-hSGLecX~7u) zT3z=dM-ZjlU;W$jEtRph{r+Q0)pjrAX2#9zpFe-)^G<0mzOx)?>74RgmuZCGv=?Rk zrX2@*)+>|*EF>tXkyM`?e*@hPW?q zwg?sQ3@z?3l8qxYTyY+Yjr@lx`km~$J=e6n-9KH8SuFuEEg3%nA)jg< z(|8rx0o)Z0A2gq&`FJo1o^VQ%bFS@4jG~jskTbEA@8?3-HdEc=yauUXH%r$oytYUU z1SY>ifL&ZPmwQB4qe|v-vx#G)cmj5;1hqS;^6i9ZswCeEOdY2F9!n8@`Ekt5YZbU9 zAN#!6FP^(XF9vo9ox{s#OJ=j0s8+b?U>VN694PmX08%5EZqo{^OC_MyUA2lBo%GP< z>g7t>aNgAQd8*2a+18w`)H%M8rPDnAl9;0HiWZ+#qSkLMoA>=Bqq&Le%R8|<`?Vm5 z_}H_;+d<<)nfzSIJ>jxTh6v`^NupPEx87>WF&cj+v=8A0(0c$*E%{3)fiKXtTn48K zll_+8qO}PJj&)ju8ublHLjV}9t#Hz2kbEk#VEe4$d)>gAEGiO0e1&5SEF93+=0^eZ zn@9lHR)>GKG%VhW|JRJrnGC-|rHrA?>4$bIBC?x2O}y>Ir)0>T?vfO_mzU z+@4ap8j1pd1y5Glq6UFR8!P}DwxzSn zZg=HZ8hotI$x!pG)9#0{FB!8Jh4IN2v~*bZ6{P|v!PEhh~-fkPe?56I_higjap?lA*H052RLP5d^3`Oo_LSWHPp5F<9(tg?v^X~JFZFpcy z(AnpYz|gpg;Lg0!eZ=GEFYI5v6~H+Q{T1PQsQ}Z4-s-Aynj#Y>rS}swm&+5CLBhH} zc)`4pILoPbAcG?d)zteSp@sv61UEdPpsuvZ?tqG zGn%bh$3SxmW<-bMXoh4%(dh$C7ACqS;}P8pFV}aH2&IbTtxSl14(dt>@p3 zD5g42%b1U`Kp9nQFB$R=iHlj_D}rogt@)h8X1jXb@|M>8zF+i-BB;cb?a2lz?jpmt zp1bZ(*Z!4=P+(T&^5gi%Y!`cLcR2ht3lOZnA23rVYZRY^1b?M|f*a=!7g&9b3c)@? zWM*SShJnuBtD$aX?`oX@4-Hg4pD=t2Ub-toqGv8;Rp!HO(U>vPdoevZB5c!;?P&#e zhME*Y=6W@F1Pg9BP;NuM01$#8SeoahN5L-h=hSWp9rCGI<-5cDn+~>uHrIm7l&5HR zIhB5Cma=6>6&!?g!M*4Pz3;&`oBy5xcTxf4XXTTCr9F$=A>5)CIf{;I-PsdkA;P%v zN=L-gEgDYwD}T#|j!7U0(Gq@&N@HQe%f?=BUu2qN12#y^WxdvO0+h&O8O`2v8){AW^TVo7QaI6dm|29L0V3a-thb$>`K#tLs{nk zsofqV)ed9vEx~ByeGdV^9x0u4X9LMxBleG!dF(Iko10 z&86Zt{r_riC`YAL-kT8UWC2^5Dz%q2!`+aj*AQ=D5O$h|S}#zwK4q zVYHL5KnF2EG5p|~TPEPCW}c_al$|}N<#T^Ck2eMY4wRTeiJ(Fz(_Ho70aCWxId$v{ znpw+B-dVNto8Fi?lVfj-ibzg?cR;q;BAAkUL~Ljt-{owSbvGt=*U5F~<&sKPpo^~H z-_JDWo4Vfb$BV%H9Iq2W!B#ah=kEbkjP=ZItV-sT-xRZV?`%_s*C=kHE`s=l=SK=I z^=7|P7B}%2VileFT;IsE$4gu1aTh=WlOKjCAmPg`JLe%;x^;EboB{ys)l47-P$2EH zc0$eyfdjY(wii`(lIQasln4s_!HZr|@#sy4E~rOavQK$v03?GxA3Mp|G%$9&h@S6@ zcv9K~i=ULmQ9!p!ktLUDu6D7#|8ZRb@#bHrl+ns*fJ25?`PlsbP3{_-a+_C>qm*WV zM*x(v2#cKviFA$UQF>KPqFN9p{7=QSEJqYQGcr@Icff7BnVqFyVvLmK+q*WlBWHnb z7xtYO&OOw8=*_UQZIcH00L;+GM+xbiAFB47jjas=zhd5~S_vB8^>}6Hgk`Z$-W81Kr!_r6@ z=IBX4T5g%L)5`gwvq>PYho-EPZDXueSJZLyG)1!_ zH4aOdvp7G8>Un3{P*zJhCsD&V%_S9oO|-OlQ+1a05(z0X^AAMG<&*-lZQ>mGoqO=C zKz)v?g3N*Qu)F#1r^6Cpk*UUi?o1WeNXwEtRX#U)Ici;FphYA$2Q@6HE^2o!G5vjw z?PwO*V6WmrWPbnLyJ|X^Kr7ok-nAqnfxr6X2Yr3>d~#&&ITlB( zSffX3gR3KpFP^{fO@3N>=HZYG<&~Lu-?GRZxu3bx>hC_Z;Pv_eiOV})q8ujQPbLq- z95ysYXY>^bhE@&bX>*FJdTEB1x^r)%=-VJqT^pXdKCOq`cScf?{P$xk;OBnp zlM$bPwmF;FiA20WC^1D$UD~Wx2^c?qd@ZS~BYR@BRj$9Cf|XT{@VXRtb=C78%rs|p>y^#y=Jr(@e3k4deF3eyIqie@Ix-fVdT!+0@x2ABCEJ!4r8 ze@wOD`uNz0&N6L|M08Yz_&f}#-v{qKdS9g)oe-t|&z!{31sW^dz@ztnsf9y03u9!A4bQVNOL zplbR z^Ga>Js*MOs)0ZVbQtjWeS_ss)d#HS*s5>{yn8B=_C9BLXQiqjVgT$I~k<%tX4FyGK zUHv0vZPvr+Yn3_)Ssd24CrC&MbJy-XnLyT$jFph!73<#I%`*~f96f$@ffnin1aSGU z0By4NOWQqZ+zTF%!CuuD2T~~MIui=n$O*|@FOo4bI=Q8v&ZEG`^M>v`@N?YC@tvIO zVfUMCz-Q}Wh36EHzPRHCo|Fb!B<=!J@PG}n%KU=<>o%M@UKLxq4N-|mxd7TyeT9Fz z=Bbt4?(XuIvSw*K^qcltgRC@<-tebZrUyMIXU*Ku{F>V`|_`AZJ%~44xK!_IG1q+AEXvhCsj^CpV1CG=f|8S%Mvq&&}tUs z?I)dl5##s8X-JVQ(4X(rN3B7uEAmCF!cukRyrxR23ED@>5N$HBa}cY;^w_i3`8Qi) z#a_LFaG~DgeyZ$4(`8z(Ys*!7Nru_!Xu;-%a|%cnua;BFLvkO=TQqmZn=6%X-d(Lvd!;_gum~NDD-NTp)fge7BnLeQw@p62-2p8J=$WO~rV7_N$qr1NI5cxCw z66~dS658hJ_^6IsH%xN$LjADuhU5zdGEF@B=thVS+``KICbRDGH-GiOlRBORd384* zu9z0lq(F8_A8Pg4IEcNDJ(CHy{fV;H!B!$HErV-~Rs4DeC35EW>>I3dB1cHSVc+{^ zdQl52MLAX6wwzVWH1x;*CYN_mTX@qxJ>iqB+U2(946e<~NWq&!uvRey(IDX9M z>M{YH7+LIVsc;blx88(ht$4E}p;^dY^)%FlvUhs_YRK{z5K~!?u?Hh(_LLNZr=2lO z6QT_oI%ngM*WJGeTq%=2^pn6wYJ;;$6>et`#${&d)WMbGebPHn(@=XUl%((4%W93IUKuWfnUlMB*vZ&d#|BfM1$D!dlGQ9}#2W{GRXIp66m4pbDv-fG= zS8P3qg6&Nu&t$|Gupjt5yPu1k*?iNH-u`(F5N{}Ma?LzVJz>s1WElSdVQlP@b*c%H zX)&=_7OD;^Cle=8XDcQh5#?nSdQN#(Ue3txWS;hR-Bk*S`mLt@rPSN;ZtFMIuid<| zaf|$;n0LPS&ZaNdJ)iJ9#_$i9;efq1`%&k&HD{tw4NeP}2N}F72XJvjR*S~kO}c4e zTHoscOt^<2EkG3IAViqKisTe0fyJ!ISef}5uiX~E9wzr8>q2`GVvys|V0u$o#?%9U zJ8Cqed(qDEi1q#j1z<@kRIZ>UFXd6bz8iSEJ?CVw2mY8DJL~X`-T1CfV9xyUktM?+ zg>0IBF;D%=EitT7;SFd}!ENUIJPTDhPD7w^*sJyXp{fT3P(X!RC9Y-a_6Df69+Y1_$B2c*CY7qNKpAs8K?D zCb}qRBx}VaG`G9L=CRnDClk!FGaPAmt%NVbaT(bI9OM}v3S8qr55i4+dG{mRqS*&} z;1iDqY%GR`*ms9?+wXy0Fa4x>cAkuGu#ga*`s2zKgPBp&%Ne4>-0@5tlhxV)KL(+5cM9)?=9IaFD>k@1JGnnpU~IHZj*?M1xbyPF4tJ zUqEAUnwDbF^QMa)1^!9s_xZ;|!+)*^YfNcxg%NrfJv0tD{_(_f48d)8ok_~-kB1Ra zF)w(|&!zY&t#SJrI=9z7rm%JG_7vX;MA4^<)1)8c{>99XZ){r}tC{l6(XK^_09iH( z)ku#EDz#)?qmqGdGb$JsWiq-KA}Xw7A&gJO+TK_YboQi~8!+M(uJsI2U4iB6A8UmOn#;R&B zTj7m!`uh}Z(`W7VleT;B@z;!HwhmCdm*CAJ#7kv5=az$lp!x7hL`8k={j)ObHX{F0 z!z#(cYAKWelZUCS&2Er-OOty1{hby@I$7hMkGAj{^M!>gcvZ^R{;y0Z zIhW1UI5Off21Yr|)>DoOb5)T~%C6wTpNk)5UNrHRVA=%37%yrJd3G49@cK>uN&Hz$gmKFvw{*dxK7sW_2uGgYg zq{lA1E;NeJ9&Ree;2CZgoz^ZX3oEaw#W3;KX-X5i8b=4} zl5?%u;~fugX9i6lY|}DF-KSi-6|C?*&|8nYMq13}fGEEADA$rQxr1H`Rk$V^Wg;GJ zfo*}8BjUN$*gaSoavk_!QKK9+nwjEZ|KrF2QEr=qkx_)6ac86JO!{@Ze$5hA&sTTi zUotYv73~?&R-4b#G;jbT^V%hX*}p3V$H#mkekf*>nVc;Rmky|Q>uej>9euL35TYFW zHPbJJ%3O@=*j$IK956-P!^<*Ce}s%H5OcXw!gRdCGd>YZdb_Sm4M@$_aGrerzv71| zVf*+T1agVP90ny!&U^elw&|o;94of2oIEqpZ(4s1va=^?wlHu{%9k2yh_TelOBLy; zZ$N2(pBJZ+;7@aldw29R^QGwmQXQ7Twz=d?E(EnE3x){Sai4_DLtY6 zY3%>V)4w&KG2CTcauXe#89Ps>wXI&&-w7f!10*UDlEsW1}N& zdfWJ;*3rUx{7?k8yN6xDZ8|k2T#Cd~E};*UT67kvKqp2J4BXzM(LzD6T{^3R>U{@< z)P0JV(u{9wSvyjvq0M2-SSeIh@piD9Tp(_1$3*r@G9a*GsanE{pbUv40Ie7QX#F@L zuWuxyBw)nqfd3frQ8e0Ja!dI4;(56ZLzSjmnGOYAswsG`xbAuw$64>65A(qVtnR1v z4)a^YQmFW5$xaVM(TsUxd%$jR?mfMQ5B;>;0<)nn%X~UXoVk(;-PL*(?ysdJ=5CM2 z_ex`av2cDa>6EMYjxQ%evg#8ju_0ND72If`}t?{o|bBHUqb&1uc|ypE{csVPpoIxJw=|6cPSC%Z=mCXUWXu$ z4So&(mADdFs<}VtwYn^k~f3ni6Pd?fr zxRRW_;zcoBsHPMkN?}E+iQ-kyj@y?^9G~I=K!hNrhB^EWS+8Va`@5NY*Y)Ey@@y>< zP8W-I-JvgCinfJKtcyy04^mR~^Q82PHk#%{L{n{hRd@sYucOF~q<0SdrdwtWUBPTA zh0i#CDT^&JqFlDb45;%%Z*F;{rL^X1$&-gs3Ok&N3w`81mVu^6I-1Khm%N6M7)O+TPOnA+3Gr1P@%x-8Q^v zf`8;q``03lK26xX6?xG%`dXPT{}Oq>bcKHr@BBH{W%*ZJTd@Dy-K6|p#J;pz0oY=@ zu^?v}de(cea#EB0hDnOCP(8tBT>qn9=YAfEl>Tv-J`pU+Y1d-epDEn1NuMYQwkT)y zHw1J%th5kuQK%i}chX=Uj87ugFkj+m?7J?5#vEz=sI-iMq3i%)pipW6s!7~!&mRp7 z7xG;?pDB`U`j6mpVe+~waCS}Ktba>P-7?YTyyq$R$WeKLze2j%xfv&my@1u`CQg%W zMEHJ?deR!P>}^ai=~w&azPo{}DZ5vOFY&EIe3X^eaknd^czeS2@YdeT1)Q6S5Al5a zpAT3f0alOGOAa@%a*XoR9KX&YKOW@Mi&OBx7~MCnsaX4-?*(cyb`%iu&k|Ay*Pr}1 zFI4N&=(9tn;jqKI-M9*Vd83COCLPE*c?z#eK|;Kh^P>a-O^&3;I4e4AU-N8}22iJ4 zw0@Zo5=g%EefTU^o&a?t2R@==yw;aJoq+Q?4Uq2S%1+6hOzPW!-vkpO-$C<$74#2j zAvmG7j`msKwsse^@MPy?FNDJ-{w=yx*H4z4F3?ILJwMh`DY&07?nW|+#`+wvSc>_! zdflE0X(HjcjBz)m79^bZ73qu_G>O9~#6Q|Df-kEB_xyLzXOg(g-&i8#h(>O`TM@H4 zD@8s=-dd$AV3sR1! zHP~+bBvq$eJ_rKj{w&>&xARFCca181h`IrjYJG>+VhB)b==<^7%v(V@@{ph=mt>kI zVI2ny*1wj1ba~L8-6^0Qh|5If#Mge)@=henAT7P!Ry6?)uaCn(zs<{F{_sw92TnGm zVdp~D8>otA)nmDGoM3CWT}josjKo1dVUz`fRH145;9JT<`Bg6c*Q&1vw~|6NU%g{8 zY21fgIyn?0BrhYF5}@jkHCOP|_RSqAMp84cz#RLq_iXw-v^4+0s~2*mh@4$D4A0}m2poYs;uY)Dr-P!et5?u5KKf{i3iYP>~A2!X27+jt5|Q`EakG@+uEps)<7+@5O@n4RosgjG{^Q2j~N$`dTtZ+r)N1Q#OYA`6^|%emDH`V>=)M zJIeU%-C37yy0nP7wiK?f*_0ts(jcBJjLSD`VBbjOZ7(OkAiWT3RdhoygnsEn`$KkE z_D?b;UYTOL;noTsF5YT@>W7A*YVlv`mGirT1PN26D)V`axPklyM#kPcK0oxvV+4Vv zx}j34oTi5#24~DbF!pTsFZPM!_BVkkWN;XlI039JOwPiii0QwEXZIR$5rw3LT z&1UjJ@l>-k*tu8hj4P?yj%h_lg(s}M$b9@!)G1U7WeS=45P}OiG44RN(w4Ej1v0dX zX~G+s@Xb#P+aI>9Mq9-C=iYG167*gyjfWUom8_IXJgd@#J}HJ z^m<*b2Wnt`0qk@ebBlU)=W0H$xHb-rwis}gM4@3cM@#o@ra!0MQ*d~$Wqu;rc;l+1 zNo(li;~cE_vc4&P9p+_#A_cH*-D>iaJhs)~)}{!-FUuVQ4H6^JwNcT(##a4lpvKa{ zX>!v%MK`RV;1~aD0hQK8b0-pLevLoUi|RF>{;?&&3@utnh6SmE!no`i&vL*AU)icF z$NDb+Tx$_{3bXV>u@xd_th$q&n)znHpqC|*P8a(_>3N)Z2H%JoVEjlx1L$J@6_;^!}etzyY(ieU?`E36WTL&xOrJ|HB zMV;ue61wB>+6F;GUOAyY9gCQUCAG7px4z8u&0wUB&x*2AkI5`1TCxCAGzcW z3P4KMipUxIJO87H3{tFfCYk_WE%vy<>R8DQjI+fkj4a~az=J+M&YprL%!YW~b;#W| zCt&aXuaCD^AwK583~dUJmTNXaC(kRq+4yHSw<&?3=@!($X0khMpd%RMIYs_mq^{zf zw1R9av3=A0_1TZ7*Jh54ulcTfPk5j^^?Rt26JOCl6RF(-DX-);*GmDtu`R&?*)406 zMz6jk-4T;^U6{WBY8hqPVkUO z9G*H%HNRO3i+dJO!48G89}xj)sNadyxzd|#p7NpeC>0;0qY%&kNm*FE^b`G$(fb}K zeo<;r5k3rO^nXn|u?e}0akbgFHOvp=>RF9i7bY&GNZ%?NpFA6Y(1&rcO+b@7SGJ$W zPy2Ts!Xx_v9k#@!P%(X`=$s?bp#5Q4o+8%#scF+)d{M=arg_U7?2OZ}CQQ5A>cUEA zl31FRD)I)~wIelh-JNESF=zC#%}p`6VqP;rt9+8)G^Gy>qyWRyXEVdAAh(ZJBd9F- z@u@nCu1&JmlC12Z_lbjr+WHsLH%BUsR~_~lmH!(0Q7E|(J41ElvPkP{hw-_)`^;aT zhn2h)9B_MA2$3}qbTQ>l=9C_RHkaD_*|hgHrzep9>-G}u%`{vkcfYq!P;=hr)_m_4 z@oa5)pnXRw!`wO+%8Hck>|dk~e?s_xMZWTX;v6J&vSH47a+15Aguat%byuopuxHlv zV5l-Q6-gCyX()vnKTXD!=FdIwWg?F9sdmM9fD$`bOY-KX=DF z3X8!L+D!$2Ek30FJZRm_ufE84ZnRYdx29ucCE`}3SA{(QYMd96IN$`NUw0)4Ge(T; z%jnz{r}04n9ahM@nOD}c=4rQiHYnmX9$N25VFDYOI@RduK!L5b$>qWZ#*#nGM_YBF zYrR_LlWUNk73qaw=SJjAb=m0 zQR^-@1;CFQGRDQ9y@93R*~}*6fZ!gMCk~F%kN3!fPb-!($FoPxH_rv~?rsq)0bY2O z(`OcrLUA!C%Ck54rN^KK&b%1CY@~&4TCV~pOZT>CVkrBF+`oD3KLTTLHf?QdDCPXs z&?`I3@iP_MFdTMLE_^f=ZyN~7a!j02`+&HXBSf*!j5;X|{Pjwdxqr(`3RN?ZTQ3MH zS_oil2jbk(A;e_Gd{k&X|9q+rF)9N>rxoXJP&E?f{I-0@L}h5sQ*bi&eSRU%L^Afw zXSxDmVzU)RPu)MWF1dA`z(#TG0zAYriwwUs*2rF$!>T4DbTUde`BR^bgnh!LEMHLCpC@)S6+9}|7X8cTK@AvMvBsb1yG@L&dbpY?!^-*S4a9B z!Ef&Sb`J22C-LdeYtk3}^9`rpBU8|}81zFC5%0CSkkTf+S^xoqWR?)b8O&l_xb((H zUvL;GLqMATJ~Q9IbJ@bKL4q<07~XosY?K1@mA(IAV4A)%hk@`%aUOrCvoS66=T4GQ z*!hnIP$I!+UQ@~p;Jx=f;Zn+sH5x}86arqR)YNe_-r;Zw>Kqx>I8lT6a_UPjs>wxA zUjfX2aK-`@UpmtekkwL;mDqqJ3-y{ZAqBcvxX2Z?FK*J^qkAi=mNSe)|NnG?WVhG0 zm|QsxOj(0G*mLhCxrQ_<`U%ft)61ylD3OA~vq*tbRhKWqypFNH7NLW}&GW-d*ke2v z-{T)Yc^+0SJxv|wP#29p09Dv1yzc-)raEaHsKP?DlOyFKqGjG=5E^-6VBl-svpcgM zl=fI2-&HaHrBNX`iP(LVIw`*52T&4LC+P4=Lk>R8t_LL%k8oU7+X7}91Pzknu<5x| zpvxMLb2<|MC;xoat(kS)k=p7oW!*BUZ^yj1mof052g)nS3t%1pWqixE++-74gOs^~ z6{TkhKD<3}(9{?G6Ct$$IcW1%t>c8!=+p@Yz7g>SUZlc1Nm!8$PxHGF+btrr`{0^! zs6qYti%6%rXK2iv|Ga{@`e&Y&DyWGr={OQqlDHhO-mma z+f~nR(>icXhz4a^r?y|+y7V~r#hF@P%p?IX=E!e*PE=R1xLvo$^F z8O&Tst-lgm&D?3^QiM4WGsZQfATtR8udk`N`#zVwmidgF|5t2{(=ng@A4WA9*_fXT z&pyNaaXjiPyLa(lU21U4Kp}DrNM3Vel}!t@-L;oa5?BtwH-{wZZnkYVs8r~O4NT^HdOx~?miK2BAG7AyfR zeqk(67Ix19+9(BH@5i4gkreNYOQFozS`iLhww+t6+UFDElwzMv#oYN~vSlLk?oQ9M zxPr;Ktkn>j+{GI)ILFxlTBEhqC^*E*^yRh;6(g!p7eve-hFwKtTj{&X5F@1`p+9mu zx37Od>pTB+K5BnmkV=8>q*G6w)+-8bHSvv}exg*7VX5cq@7dm9WI!LQm zY8d$ouY9Qe)0o-Qx+&R-d9KgzYg&5`_}icSjt)G?MV<_CH|a%weel00pBaPz`dV+I z*&MUq4K1{!!+}>T|FjTwVwi{S*}_pnR#0c~&*HAV2HB;1Pd>(4eIM_*wW1wpE@ zP#0OzWt@E*V;zavu@)!M^n#%qcwT?tI3Npvc{ix2i19fWiZrK#o#0s5T3pYhh(QMF zK_>#=c!wRRw8;0)ub00mM|mgjT>tQux6<^rujBAaaR+CD%dZ&^e;DxXm)S7$Et@?? z$kT()b=h$b zVJTjf<30YlvkEt8OVAOG@uAYD%2&ZKCOdghM#r3|u^1!eUrt>JcP~Y>u?^LXLC=`# zNaEJGk60Zl5t6w#Gsx4MOe-8`=adijxuEfZOqw*5W>S{g%0fgQMq&|GxFZac@ZQ96 ze=S`K-?=|PNm+{#({|&luJlA$jv8)?0A`MPi>HEmn4g6(iF}`m7zM(>r&Y=7iU#K1 zfhvQ$m+h!u7EBfRcBRV_QW#d)rs#KIh=c?Z^z7Rc-`&cwuHqbM$G*Ujc=J|aSd)YXy7bW6B1;l ze-?Y=3O0(vz9x*FUh$1$J9)!nn)scxQ$26|BkoPCYg&d}F0!Ot|F>9~2HYrXlSkHS`ycdWkH4JqsH-z+6AjSk zZ0xgUN`O6{NUR#7|F1eKW1z*%KsjOoTr0Ak@x^}uTm^XaYiruw$KWz(j5GSBf#cE! z=8rGt#6?Fp91A+sFV*8eT?#-mmw(dVWz2T96l4CGGG{8!F}~Gjd-_VpJOyR-KWb@r zU0H{BPaZyPk(uzJRGalWA3(!|*axaOj=)l=enbCuJEAZ++0ADgOueD4KnS6WdULpQ zNuf-Gj`I65-6Tu+rapLBYc=0OLffH-w{!1gBEmBAgTKb;eh=JaxsVAVM92ngBjwLC z^(1)CCxnK6=?F1l8Ssg^%;~Cqu#>rFgh&FV6#rGra%UiYS%!T%V(X8qk-Zd7mk(z` z26RMBtiN`9RG5N7^W5^!14b!Yo?@gyGqOM}em2%Y68BofMVWSGq*C9v8Y(@tGmOCG`ln3m;c!q`XER` z{cj%4Ctl@fg!_MX*pHAR8QQOK9xCXp<#ua{9}6WEd77sm;OB*RtSW-g+1i8N9j-eF zbpg&(_Zv0)6`Od2hVRXlHT)OHZ9g`x$VX zQJEi;bQIW?@%RF7J7qs^J?@AC-NR9T3fTUC@pnb=W@H&qTV+ zR>Gdpe#ueoiws7gcr(Va(Ges=X)6>eKtI7`c|ce?cYzb)+x?>=2YW8J+=c$eEGFZx4szcQoF_BsyjP3PYK zlQQ>IUKYxFZ`C}!BW(Vd=&J5$;Gb175p!o`_X2q5Lhf}IT8z4#)S+Q-S(0;226V?5 zjIFu`js&llzH9eBL}L@}gdTiJt8zALx6K^AGk=R|YlO3DV?mAgBDY1|WH~r*l*ue& zNX7H_`d#Ks;&bymzE3QU6c=e=QG?cD0Q(A-%9L@~MER(x)4}{+p_^cAcCZP&gV|v( z7B-PZHx)t8tb>{(x+6g9w35mLbhXJ-U7D|iS03KDFek^O1ex=Cc zY)N|4yT?f-C@=~OM9JsW90K!q5G*?GP@Lby;X1@NHu>Y?SNut}Z;py}I*{zq)_V?^ zRjGwV`V{h&%iRuY3k5wNy~g+g)5p}zSsGZyagp%7=>yuWdjsBj$>FHW-PN<+dnlU{1|;&u zR7fEC)NO`FCq{GJtr42DSb>7)xUiP zb&%6XE+R&teMJIJf>eGyh#g?kBlj{HOnn*S)bT8vAq-Z7KxxYWRO$=^`s6kSpqS>El(l z5$J@3y%@vOWJ^PSY@Nw=a{*4f2->`-Wsb%_DrKM*u=8#6D#jd%6g{LYIF1J@ps&E| z&oG&-FBv^NGVXdtylHh%))D;_RMLW%aEZsPGdWKR1zPemwyQ0*Z0Ng-c=f*VXXrVH zShyFzu;b`h{&p1yJsXHm`#kZFMq4U&o3WZyck~Hy1}kTSE&Fb(WqJSlGUM>I91|G^ zS8#irB*RPd1r#hOt2~nj7Q+M+3X+#X!DG}n>k{9DsW%s;`EB*EgKIbhL%VhoWJXD8 zGAM!9nOn6}!cPC|0ScpGu;c+MC5;!#7ka%v^zJx#m@OT)0VU?!?^=QE%@196mquuL zQ|ygH%9pvIxbdFZc&d*%zgxL7bwFf+8ThgtlJ?Y5Xztq`Sv}uB4QJMC!<_*7%g=nxbGxuUSasrVw~H2_j|D5bcTku2pNR77kCRR~ zio_b)J=5hiC8x0rM&X;z_)opIGDR6u*Cl;`DYdAz17yfORB)9P&J^g&OgevzVfyxp z{4U;%S(9AXZyfsL%ICi(gCM#TNU992v+q(QMnU4Lfu+)nEs2no3Y~Cnij>r`P-8qX z8vrI!;LMPCq<4MyI~=4fg}TU~<+3F3b>K+PzAd*0OyxQ@a+vy2U@O#Z_)A8h z10EMSBn7Kl7W6Ym>o3kYV#3l+Jh;i${$Txj*}L+zv=!X6Yc~psm32VIbD7ZtZ7ilT zCQDOURlti1@IVMuYEDZJ?C>-1S=A=Q2?3w(FVVC)FAREoaGb(m6ggcTKt`7`=xN#O zdIKn&xp}7wr|p&^Aapfy0G%-1}61JhvzhZZL5W`QA^$okzqO)!kwn8&2^PS~tP!$ag`lZN+c%dF1@ z(%iAAK|^!Sw}luR+Rht`tW}50^%u2VUB-HfaVMAv{41}rT_TqlMh!d%_2Edv8U+_M(uKHeE8YU{ zJDnLGIltW>$CfkJ)^WAa*YE%@M4GI6FzO7-`yF#Ek80s#k=TGk0PSZ3zO3dtPsJtn zlv0hk!+Ipm4QcG@rax5Ilo&zsK2lM-qTm9!xuM=K5tm@{LwY2Y&q;pL>JAeIv$SKoTb8FK> z!JrjWOCj52To%YqnKhgl)rrQAJP6)f5K(J&2-zmuBm*_#X_1`DY>L4+uLCb!E(?mt zfr=Libozd-wX!QKCK!gl4Ic;O8#%PJZFAR&;wF0|Y%50fg?;1}Z_0wi-N_o07+?%* zb>HORJQ5MRHc+l+u$IV=|{#F?-IA$e!_wMW+ zzXB)AbzRKev^}v@oVo}RYtM3X2S&{xt-|u)ZHF~THYx%4vqd+#19M+@9=8d3xh+}w zwk>tR@gSdJdw2t4eaM~KWM{c9$?G0y@;4k?$U%EV(!2OuVu@J29q}_7ys2iZE^6>q zjt=viu7qJ++rc{PwI(s+J;3`y_7}w+3b`{hwsd>Pp${*qy?_73M>gWXf6wZZb;j2; zzZAsrfD6Ca*SA*G+?J}v_P~!#oq-{sG~qDZNP6$n!R)|Azc{RNMBUPg zfX6OGsbLoBW0k%km{NI8W;`JF*JDx4s3bI&9bWGwd5(tp`stkg9vPC~`UICq78r$^ zD;vHB*sC(yq*XV)YJu@9*<@Zx-AqOEgT#vN)Su4n9G#c^C@1dF<6gF<*JcTAPh~m9 zSLR@}AYnWQf(>|FdnUQR|E);cqMvOQ&Rmp1?Qr>n`^9TJO$?e@|#y zgNd?E@*MEOmX$j#_SW?>qC;MaK|Tgapi5`yF7@Hjj*-CPLrH3bW5a zv;kLAoBw%uiC2JtiNs#Uwx>=)`+6BWS#p7Q)K`rrqtNErB823gi^@+9<*e-%2E=4^ z!5FZ51f-aMMZEQ&L)r`+(qo#W57=P#_>=g*QC0%uzT-HLdB=kED}5)?3k*TUwzhEd zghjROS0qmz4|{h}W!T+Y?UZI9dtbeDr01VRY(Dx~yeCi{R81K2^U;x(!m6D^+{O7N&5sBfNul&?Dqr7CWUJhHlM`X!El4v2-kqVnjdfqf_o-o+ z1s^ZgSQ!;bE{xV)P$&3lW2WcKh+!u9nbQfCI}CEG zU022hc;(}6eX~5rXTakG_m3f$s?$KP+5E$0U+lCzl8Z}o+kt>>?b(T&Bjbnbw->Fg zNKZeR@ML`t9{z$X>dK*xG`bT#a8|h)M;OJkP6ll0TUA#7%%rW~VsBLY+WWYwl^po0 z6@}8HJB_9~6r#R#z3+IuN44`BOaTiub0iDH+fCGDjB**zZr&$SrpegGOD+lcJ)+Ur zX*!c=(Hs)Pmd3;y7c}VKP=B+QsCVrBk7upP#U&Gi=L2S^y~aB=?1F@G0wAD0J^25% z_uWrTf7{w3N|6vyl-~VbDtr9IizuTRDQ)You{Ws=(s4}TUnaxLC;4nt0%h+Jw+2SRP+Rp~vKQnPJK*oPpj+WEg#Vygy-R))Kmz0|kM6{g#|I^a+^IW*V@6iaj#zqHqKIM_8xN=WU`=F;fSf15~)nY(Qj@v%EdgG&F#uNHP-H zeC*u6*89y^5n;|ej-kI2t&`BWi6vVib5frKy9n=&UGiNMRj&)BrO7pSI=UY-37hfy z!Dxp2FbKcl8Z&%vr+s{=RUepNPR4o=TjO5lHM64y+JBDcffokUnepls-U&DvJ8XE* zXPX>HuefuZWm4IhpBk8StupTt`C@ zq$Dsi2@4Aawf4^A6}WZ^AyoRxHu-~8#x-Zon_1mkKSJct%Yv@SNrL%qZG(;uu1;xBGva@m1gy<0S=bY0^wLAJ&td{vcK0zjPc9Mn_`BYG zUjkRWM&Yk^H5@(iY(nAPvNT4#nT=1D7>e6!Dd{*|S$_ z;4p$F{rZJLOs9-XhISXnlQ`^_xLqbD3Rg@?uKA@!-s%?1R*Jmxdv5p3@pQn+;?PqLk&# z-MJsR@v}PW4WArMlW5Xl5cRF(B?o=qt4CJ+8H_6l=$5%sjp5J;VyE0LLY(|W;2 z;i8A$jMvX{RDP$}glv9&2eTjHUE#2m`3Jl*zPHkUDvIszv*+~ho?l@ttIX3)it8Mc zTp+Msx6_#jpVRW2NhRq@LD7)}!mCH8UFd;gqiY_}0B8)TXI@vk(1AN7yYYhL_ptBV zOJBC@6Etwby(DG!74qFyao=H+EQCLE&BKK6myxgG)8a0;_|GHS$m{*E1BIG{yoY23-}F$C7axcacwz zJJsmIfX9hl8!M8cpABQB8oN7>XE4Kx?m-j?~ z{n_+$-uk{QFt55iiT@ww502GLg}J*U?Z;mk$rmUf+%7k6h(dqwQ+sF65nd%9qn>(D zvbyPa%C|2LmH3u^o$K(59GWnfG$!#{$mFYRKz(^6?C3W3ciA+2uv8;Z)2w?loO|o% zfBz${uW`yv&Hb>Yg^IB3ox&u#FwcIU3*QZr`ctl=3c6pXxzrb%8oOQEBIgT6&n+du6 z%zZE_k$=ZhweQ8}P6F)uHJ)LQ3jpoo{*qPvud@$61GGmi)iF5Vb?!-7_Fxc6E^u61 z?{L=d>kwAf+q@hj_Sep&Z~g6YQBqG%;`^EoG7Y3yFPaP-O}P~W(P-4b^%mX^Q6a)u zi?q|JgM6dIY2Xqf$}WT_p3uFIwlDA9c%D)Ne-jj4{(Q0FqBaHN9yW3pL6elTUq|Do zr5$f%Tb69I8iBzLy|5%iPCb<{)2{VFK4oU#R(fQ zNC{7X>l$#NY?HEL@-fy%PBQ}80T zreGutDJkk8vYZ_7i&6Du4#o)K#R_L9950xZH3mPx2X~fLNrf6Ot{6TP&d^I&(^$eHW|d;3UA+Fb&uH*)?`*HUIfmt#jTBYvQeh3&3Lklyrb9 z=&|gtUe={Qn2ZFkRT>*gkgiRGceg&vp_7x^&0QM6jInhKT8}4*T55{<-Q85FX1b3P zPphqS^Sbb?x?8!ytg7GqBKM--@x}$2dzaTgda+EIkT=&og1!%H*Iqa2x|8NnT#ZJohWp;t%RyyDsw>|GHip$Na*zP8R~esUS@ zk5#8NI|nLy+o|>eKDV~IIOTQ2j#@D|r@qCBo6d6^*-)n6T?9}7O;>E1kv4tFduq_8xEli-7>~t2&CYn*3F<$HP;=?z`1n*)AyHO*gbl=UuyPq=4{~QGB#*MVhHd^J; zUjML}7q(9wG8H)Rar^~kpQ-e*kAhug$%pjb;=Fzam8C{yAr9q%K8btB`ua| z)}u#!Ewna2C&<&_%Kg3g(qWeTXTzkWJZVV4ZR{T{FF_WYn>IaO;G7h9o76yk>Q$~l z=QrblA2cFrF3H#!u8>oSAEOg4H0IxG)A|_8RQcndfqpMwgsqaG;zjlZ{L`-~5CYJx zwO%~5oPjxWTN1Uh6Rwvf49cPB)VWz_ECss%qTl_CUQWiOyW?LA5PY0%ejX9zzUDq9 z`X{_Lcd^&;^QDVlh*6W?o{SnPDX$}UejgoXCIj)z&0Po2=d+(cPQN>wy-6U1xe2Bj zHwb*q>tCVfX}%@I5v)7U*3t%W-xM6{YaPE&AxYu-0$O5lyMRtme5KEPkk<CIpAP@fRLtsgCe`m{VrsAk{NWI2CbS|39fBedb1&Sq$Ja&FUE?G z78EDol#$AuhaRdO1x)yHm+}#XORVZ@d${!qQ%^G`@o1K>=iy_vOR9{Djq=uGVfluM z1@A>fG#O|1=0AYyaE$$MUtme=1f*2n^{mSxqbF3fU*5G6_FxpG7@(qNp$Pd?FRjU%jxAJUn zE)Wrl-+``u%Y|eo>6GR_T<2z=l>|isRWsk4ZjH|iMe)&X$hN^m=XtvV?V}(Jj(2xu z!V_BM0iN?>ggpzJ^#MIKKk} zh=>a|ECJ#(hYznNjYUykVwi~Ddw8{buRsnBMp4E_g~TMEQhU;~{QInWqL~RTA_6_| z&Pmg#);Zu#|GbI4cnEKjjL^^z&rj>z6uQsDYF^NQs7`CTVj&|id)GsUVdpIsIL3TpWb@d$97KaW&@ zTDEBwo;xk`g2`Z~VGp!gH8OskzQiEP($QbY>83Rk*D-NI7kOE~$!k{D-4y81!ZkBQ zvEU+dG7d9kj`|jiH_LhZkhaV2Vb|>?h=YF7$>{**_XO!lIIPz9xPX)1&9K`Fhe>mU z18lmVHiu+9#hIGhk(*+G<=WB*p2W$osx4hLSnwk%I5KK7thU3tLQ*8f6-!KsXic8#Pd90M&lno@MS z+K(QIDs~Lc9k~aT?6+ZXc)24>B6E1lI@?SLTyEos7-)uIqZv&vN2KdZ&Sf?8!5hZm z3ngYrf{`vrGgXdl($4{;YC;eTs5&gy-S}mok%7lbmFf;3!BDmb zu%#qpQN*h*5W2Ob-E1Y9UopKcs7aA2I&I0DS^lOgcvwq_NwpeZ zX;~WBcoZqMNNzh}bJ6$z$I1i$p6t2SrFB&{b`PeTi)B7OhXp$?GB_KPY0U`Q?z_T# zcClfA=4}Sc-j~n9DS^=|C;YkoU$ilmCB3$&qGw{A7Yo8`&oz1+S$K=nsMx0~=tmhF-z$B3av4hS zBr-cda4UDr&X0Inpt|K{BOi*#4GrCs>8@u$xH?+UNz0*cl`(ljxf=^y!1+PJbvL<5 zmlsUM{_a!#IsO)&l?8XAmdnZ+6j{^J@J92F&5zg;eUt$;)!wYaVMz#H=Z?Jm_!)1} zd_Qm52p_+T2@)H-o=_vN^%9_qY0VJ_lF8hsg)fsO@WNQ&`BYw=HUARc10G~Pjkr`e z!*}J*#v;-up7^D{dQ2wrK@mj5Tj(efgZLiDlq_7BrPtE&H)Ni^Q)_ag@%+W=fOHw# zWX-57whQlif4(caRFrl%+{^i-XGp!^)x#^Xz#G?aKm+5wr}CW&i@3(P1;rA=!A10~ zCYB1*&78r>j@>eokImL1TM|j@%_!n4rHtZ7a%g=&xXvH47>7gShbs>*>@36#*Cr)@ z5h=4n{xCN9P~nJm3AkB7YZmW~8A;J*7oyh31r=-qJ(!Ddy<6V~H~-6GHfEK^0QCxjyApU5 z7YqCDmUANS#I>iRriF!NDHOe!_su(u+0|Ru$rRV@SPqCZf`KCz=+^5(Kg zo=um1QqV2G+?6LlCbtbD&`=ua=`ojQrb-F$cIoqrx5Z)$SKQHf<)nrOF{1YO!q4=) znBG+6#XMx!SD5xzpS^R6b;kX4mTe__usOxGNuV&32{n5j$86YbIw1F_YmIy7Mf1hq zW}QKJ?)Oowc_*H7!oF{+{tFuS-~N~0MfeyzLYT)YN>F($4xxgVtud&DZE!C)#=cCa zfiaIMJP6Cyi&1zp;>MQF$ZDD_DWmHMT7}CZYaBaGxqc0?x7Exp9Y$H7-<=@~z zl4`xCJ;RU-ElE3rAZ>G0AKVMq2o+)(@w z=tiSYAYh@Zb85eQG|b-Ch?n*|-F#kTz?rgc^XeX}GO%~r=*)+obTIL3N zM-6(~^H?HeDY;;5UQIGE$?$y20#lhbx9Mu>GdT&ELS%!IpgBD(IF1&Noi~SspTav} z=a;u;%s03X>)os+>4UPsH#-Fu^d0sNK-Zl5_i|t8B2Aq* zL2G(X<+ff&K`01%t@YpMaK|6c-zs@@9<*oJAED!vK(FFnH^1;`o5Z1$0mSX z*ygud;iQV{cku8 zHY^3DhZ7ky8*!i(tw9YYn>c03Bp&C|t{*DqfbIYlJ>&h;FTv{wgPZDgyB#2CJvti3a$)g*CS&ys;A}>{yR?&0t;u>=d8U!d~gOu*Y|n z_#9=@D$8cbfk#sifH2f? zbB-BF(FMA3VPImBRo?hc{6Q}0m)w0x-*@D7xS49#>BarM57ovBpR?t zVs*ecV+Zy$kcAeM|7qDG?n;}-x;UrQO<5kIZltLPmxXx{nO}D2XgM{1aPi?LIQ|D6r)alWP9 z{ljzxhDjN}y@4RJ1AIhRN!9n}2jEYjuyNPEq^c#~3krT^>+qj_@PF(a dERU2O@om%J+|t&z_B#Q7?x||3lqy>U{}Ny$dpSXW@B6*?yJwwq*E;L|cV(eQg0S@K4B4`!(mSlt&}t=X2fIr`@e;3y1zpy(jc7t zL;RFahWWyR{5>50Ab^>})Krmbs%on0F!;&fGyWlA-r?S7BIFMTgwj5?XMG~hyN7w} zTe_d~(Nt5`(oj|dG5j4;-q6Sa1VCs|NK4o-aW=~y0Js3aO?PeV@kz7)nOhy zko7!M-BulVW=38H!j5O4(E~u4NhCmVhlxkBM4})qNfHeklc*^PV^OFrk7H3AgI%>$ z+pfB9t-D=YnW?)2Z<{q_Rcf2ZSR$7kJRAEMT`q;s=)5ZVCt?0G4;bxP3>k&IxC|kO z!zasE7lzS>`a3NcK%`9*FwKUVH$x|zMW^SaPkumPc{S(M(YAJ0_OuY`;&{$`- zxfpz5!l|wpd{@G$)dZK%3GRZ4|HLmbPd*>UKU0T+fO09F{1@^hNnz4+9THu9A{7jH z9g+mboFgfpQ)yo96VT{?qr;QrePYcF&eH%i>49AWL$c((ZCv<^q{W_ca-#=<~~-3__!y22ZOI2be|^n%7q`H7<8@}k+| z@ELQqV)EbIMV=c>4R!OhI-yr393w*RG&ukHVy3z^Ct6?pZ1Kz5ZYV96l6yn0z1!~Z zc>jn+oomU=fX*{okCgQrf!)k5wA@#(lD%o>!@B=2J}4UB+*buhO5m2?URef=LVuJb zu`p~xzJ{h1|H-&_()YQ==Kdqze=myVk)g#oH6>eheS155$8*8>g2)G*2`;OVPgY`{ ztYn-PNc``D^>57qXi5|RM<;VV(vhPjSFH`1|1$VrniC2g%@!TcmbPe-wwgywf6zGj zQDcr5jn%NS<#UJ3)sBF8A#PZ)X$1k;}FtsK*^;L2vJSE>h zrI^x93Yuu#?fKuve`}6um^3ZYGzT3f{U4gsj}$ecX;TZr>f_%z>d(;#8i5x0PX+)$ ze-@j?A3K7@DJ|hNmvBn|2&09|}e2oMXmOUr2RGBZ%>7{N(w)-ut|9t5Zm z0ysuNqE>XG7IZYtI}GLvfE5%p&3m{8&_e&528vf7#f$!1{69-+h%~VDwD`|3G(>ZD zpgE0yaM7^ztD{jGw3X!lJp4~^VKqS~{{t6F!wO|*^?#1(|Bmo~De%9g08PX}9JCL= zVTFVun5Yc`l3t*4VCL^Mh@SX&dKZK(d7nD*>v0w{E&NM6XbbEIjSJ#>oYl-(8k}WJ z_pkc@+hGJ?7ikS;G+?vChF1gsl55(7ytCx3W}b@=0P8Kp`wwckQ~u`=AR@aaS}WcZoj8eTF07X$D#1Ufmdf!)x~C;OAeLJ<}V z#@XI9Cn!ZygO=qkdv&pz`Tj@Ryy2-Ne=u!%p^=^8knCE17zBrn-xvmfNdx`QwDUJF zlHjQ{|A{gYikSRpjD=d++Pf6IaLRv`LV_1pQ+kwXi0=PcqG-;YU-7@IHLRdCD@?P- zE&|0bQw~R(|qWptJj17AmJuc6u5WCjpuRwU+0NXMB2CYC!xbx$*S0`Jth(L-P~jFy zAekl$>FyXLnaz{Okfp-i($Gx83x`vXC$ktT$mHP+%*a(ZHH;EDAIBh(mxHN;RpD^* z3;Y$#7K2B~9lIAB{W5x?< zb#i1c8eGYBoGz`7gXVBV&_JqkafVwZ;WYoFlm-FAw=`{@{@KyFL9hx<`5obsa9>2vz_%83F(bP41EL*GbL&w1p0QxL(F1A@Vez zi&3JA%g{_dA?yDs{vaZ)50UGi9g0@E`#-r*mjB$f{MY{F|IgeiA+Vv{0T7%?phMx~ zGt{ZlrF@x;0>Ujk0EC&wb%SK&mUM0o2E%8Vt^=3J%O|8Z7$zej)g>X>#~9c?Os2uwGvu6bB6Far(0 zaq6%&ut8IPGu)ziiQq|Xm#s|CIjp0$FH7d))JCATv|Mq#>d0q7Pb%^i;X2RY7jau9 z8gL*@7Noo~>P84O!D04J&rn**4WD5EQ2N>cN=DE?PRO3$y^>i#ocM<^-LyR~er%0rXgTpX=m0u9Gs-7-*w;?x&21ov< zfrf}S{yz;gM6_Z4_Ml}BUGTg^*u%`9wC*rREB;OYHjrtEXqA7f4iV9c|BUwsQ7%s5 zZ;@tx=?<-*l!DTbwR)o-*c7T}iTb0nv>h53Q*+xgp*}rq!rZ*U$VB*MdDW^plSI3d zg*VJ#!W>f?2a#v2OGsBB7hcadoGiq#c_<3YP=9ADmIo4 z&_+{Nl8-Ci>-HG z0A_9>33;TB0r#KgW55>xFvAg(ll@+5>*^gx85*0IVJxj}Xyy&{XC*`dAPD5|hV!rt zf&4uHA&UO#4;&tV94?E4<*6uT2Rl3a-zk>HXj3ywXGbRsQ&WtY!znwb-#NB;a|@jL zNn^q(M+-}wg{6g+tINZKWQNAt0e{bHyI2P)V*In1U4IYi)-lI%=2#(*W5u1z&FBO3 z0_RM=IcWARJVh*DAvZ7VE#cnxr#KDFQ42h_=OxWn(TDwbz_GVZupeYZAEE8e!7=Qp zG47mOs#}w=F+0KEkIP)EEl&-{_lp}=a7dfS5;W4cE~W=%jP1ib$7#Ci zJCLK9N2*XcB(s2+j9`)1!EZ3Vq4`3t_u4UrB_?KfME_!L)#uBe3%&=Z@PnTye?qQdOGvR#oMhJOc~UUPWhMQLR1D79Q2pK z0vvov*V(YHRjvoltUuU+cfmCsSK0&&ggE5P(j@{4j5gMt#4aM`Wo3D8o&rVM` znjZrv_olyheTl#7b-DSI*mG|qjrn!nQ7m#Kb%tEZcI8TV;F&JVx6wzDq12OCE`8K+ zFkN@6FIt|Je%}huI zmPa%FHq@A>u6C-t`P6XfZIx{jH*3Jj$Ab#wRu;3j?8UWhPl1rh6h37UF4jgRg{beY zFeLyg#{((vj#s{~KR=EdN=-n+CQLPLreQ8g3m^wjVgW)HmwmaJyWPh0>!V<=7B5X(Hx(q0aaS~6iDf+$pieFf<799aEnxwy(GFg{n9`N)n3Ob?FXJWy`;$~TuFa*x)DSz;u%h4oOI+R?X=56?{fcNT1a*)8o z_m^1c6?tR6J)w(|hQx0c9w+8K;~|cUJ(ZJKO=PEb@)vz8YV(aQ>RMP0^kNy*ihdsw zUX4z~LK0t}ahK2;qz+QK9zMI2Za;7@^93~PL|GYJIi3abfD^Vg2tt8=__dZ(*Dw`9 z+o)YGT>%kZoV>@pcpD@!*`uzzaEa;`Vm88{8p{x8LJ#b3YS1AntQh4_{8BZwcp9K6 zdj1P&u$ln0fHU%0)|#he8SIXRwj?_mVkixrudh1rlBLlmc{&Z6t`B%Yi|Q4trUp%O zzApQq$O$Wl7IruPvfIdH_z7hxevnJj5!ghoDDjqQ+z#_?YMB0wBMn0rDaavxvC;ff z8<(biI}^53%o7)4r=EogkiQG-umFqf7Cgj!rikie(g7xH=9{$9a zwPTBz-l|N|i+qVdq`FpdWk_C_Qzobdl81K-+D)YN`=;}s+`S_HQa^}<-Ei_yAn^Iw zqrkq-Lt6XWkzxB5N}#l&a`iVih<&PaA%7?85_f>iG9}Uv&f3tzLxy$TlYSe4O^IX> z+ggeXaa=0Vl`|>c#$-z-Gss6ObX9dMjG8|9(O5ePY%HDILD^3+(hS$v+k#5!doTxA zpgxBI#r(8)nXIdoC=E*d!5q+X5-b3k!?d)?Wd=!@AK31Qpr1E7e1=}9#=ZURq|q^u z&A|U~DfJSn1*wWFpMJ$qIW?ki1UA*hT`ON<9k@~&=nwNfrl(KfV&aih#N`?(%doy` zb;DQddA`8kIvS~v=>$lodyfK6EDztL0;>D#pzewUz4GklqifouB}_0LT}vqOtfgDG zgl`4t2Q;X4Y!EAIR3M()Xp#z}KFw6HYof>-c3xA=WH%T$sW#zf`%s?zsXP*vSTHCa z7ngneJbjpxI8o1n4aNR+R`$xtyV(}T23a*x8FhjISm;a#*<9hpg^)tGiO~#?P1LBJ zv5GzFY-sh{TLSd!EXkSN%^>^sJEuTE%9xZ**+;-mHH8~4QE?4_nXch-!^zE%htT(3 za_9|tDC;Dv++>yOl1%3M{^MUh-CPZfukVPSwqjWP`eUe;6G8Xu$jKy$vSb;iLQWgk zc*b{{{nhhPoPsU=rnxOE(u9=+6FfEllW?&s*n5XL?!xjCb~Ydg#1z9)Y+JB+Z@z`y z&MprkLWki~DsKmX2wndX)g1{xyAX?;Jm@G~LOkKIZQvxIM1G|S3*<#plSjkx=u>T! zov>kry;|2z8_3DGR?Il9qm`|Nx_+Xh`mX})7KyPQq$+&EC#ZqGiyNI%WR)@OPutu}Qr)w&+%>7B8-jf(#e zAAnin`>cSb@>a`A3-;D~RNCNEh{uA*)J_GrX;49JTJrP|;SoBkW*gx+t}~)fxAPAs zF^rG+g$rsTuJ`tk_=G%eQBFN`rK77& zHJ!Cpl3&XE(so)&a6EvKCz%Zy_wbi=6(48&yQZ!-&1tu+#J1<%{P$0OZHpp(`?0~k zB-QtG{l&QdHMy2Tz5A7t6YgufAFJJ?hg9E$tqZ~HEG(C!K|DYRejw?=`$tZ`g}01v zop?ErdA92QX@3Tu5Mky6oqQ*HC6WQ@Yi!BY9xZR(&ymwwYRk`pR*aFsVjr5RUb9s} z5B!ih`lNKBxqCTbj$Yp1G8rqo3cB4v89x3glpd3Y$|Q4%=qu;U58f)e&`$5y&O@a*OUfMywf^suz;X6q!aSO z+;U^`e!4AOcGpUj)2uu4*<4 zwAbcZ+EUEegbo(!DkK9zoAL%HMU>7NU-K|Q5I)Ba3S)5Ik~W~RShT7I;<}9_odv`R z5}V?FN>HkBC7*tEkidz9r3-S?>rnM?#m{2cB-so+8Rp9U5ES-zqg=+fxPem<@QoSw+K z?RGkUxsgf|zbz>=n*M$Hw{VM3%#5t;8lk}fRnHC>A7{wEDD1}4=I@1x{bD?8RxGrGqtkRLe z93xqNLrs4A;gcG~l01XzVSX%m$&IP3WN?GOn^fRTltICv(t8>ioDLqm?+?CgRch{~ zBxiqo=X5u$#hkDDK5@4Pl+L_29qc5Ih;inVOyYAKq7V zdm@GH>%oBCFB^jq93G>fbDq1_U?)GrhY|DRGBCfm*hW{b!aG)@{y0hX`fN%hOr0uP zz&CT|mOQsv<)iyrI+_tS28cMM!>###WAxTT^_??wWY!2pK;r|w7&!!AV$~e{+FzKA z&1Oq|ats;T0*hz30EGDXtGYO_&ZWUKjMC>7?YEZKjjunT_U2wfKtc(sHa0}Qz@Oai zaI7Zn<;$m3t`N3o$BVw{e~;T#Eu46>hv=C(TN-uVOG|=+1NCFR^M4IIFJU)~k6i5FSk>E(Iz5fvmM0CW$dY8FADJXlp60#Djw1VeRZ zPSs%Ok1m5}i%mRKTPIj>gyfw3xrX59!YU8%mZsoWw*5qZ?56%Ba0#&S)?CxYu>w z=`Hh37sP00@P3QUE?+Z(%va}xwNWuhluxk0TGUz3ZB>bYo9Ovm8XpNOl5malS4Eq$ z*g?j^=aGq)Hf%PkF10OoJeHUg>++>-5LaF(W4TG((ZYKq<}-<{$NQ=GScz!> z@BQ`PZ9A8B-mdF)ILVAq%CO0X1xUV#x?{Dn{IDpg%Sa#l-?dpoVE#HYtfvwqu)%kF z7}p~t{0c46qUYA>4^_(Gd02WEc+ThvAWA`JcE2UbUNJDuPDydN85|G*ZG2ka+Egj^ zS|MnMqKe8b=6EJw=yb8`e8l%Gf^)2+vsp>sroCX(enwJ48RYD zNr@5uoNLWOL2e;(a~=MR*!dFpC~y0fnJfcmEHjGw>e|aYBRMmJk#`e9C%-KjH+fqv zsR$b0knM@JSFufas%2jy;+VkW;|)geqyaYjgX5*r-?*Pzp7eQlf@pFLYrxd6$q%*B=-KKZJoaJ-y>kyk`zso`8QkL0wVg-rGcVF^};u1hZ5 zDgM?J71O8yj*yjywGXX7s=4oftO!2Hk>UN~;pOKsXEY^~Ma{wEUcl3C$JT*(gBRK< zMzc@SjLv&w&@S%!I?Gn)J;#z^Z24r@@tpK@&+4AhQJ$Fdre0u4Mf%>QZJnVrh<|Qj zppO05A;jSeG}nr1CV7I5wWYP0IUfHz<9CdWm6Map?;LZCrHz$^HNo1!*bsAg3gP7V zyFyx*waQ(N++r(m=0o$BeYJba{$UH~t^xG#psf0MbwH8x#)7^`d-8!=J*H`1e#IEA zMt}vRv-F&W#@X0$24cvRUJ5%g_qK74%y5-W9_9+kLF4@QCT@U@!$Johw9aKXM>HXq zWnIG}>BMAgXRf!uy0_jUd>arP*Dq^zMb@&!JE=rkaHO--t;g~)Z06qm9fplWkdxWX zmKro+##F(@R4!v}C?LJ3mt`P4^l_EXX6Af$O{E#ND*9^Gi|t5P9tpbvG~kdNrmTO> zlvl~$UQfA|x}X(Xs-2a#;cT0}<4QIoUi}gcYXIMtba2@0SGNNhfAGugHw)v0s#$&8 z@0Skjc>xXT{4|so#^v6?-aj9keL}_8XRS)k@ATPlNS|LWjgZZGeCpH)Pex6HE|wWj2%wk6vWi3CS%Uzu(Hr zIO$W4FZ!!miaAWjn;74VO^eC2-tAivQa|AHUr#L&rLo2oVKG#h-Ixg=CC|Mh)N2gBSehJF$|EdbqlBwPRoeRu2{m$NxZ} zs(qK$0MT`fwx974?RZmXiDypsymH&x({p&8Cfo#|Z876C9f6h<9crYn*_L0Ks0wNh z7*bbcZM=SY-TOzM^$>}>zcW=5RbZTe1cF!?FwYD$-N$rlOf9oN7$jU8YyP}=j=RWX zQy6T0VMJ-LD(A6A?Rp-mZEiObl0d~4bGMT+jwR=~<^v-fE30S=lEVal`i6-4l{%G^ z%4gpydk3;Ga04ZV{!_2n?`gR^XUr4VSP8;V%=zN$-EpryCV|?sNWJ2`cpGZm}N zGqbXZ_{K{7)qS`g|3``gWwNDzX>f41!68}(HbSa8Nfqc*2&X>w^|G8ckfB@u!UhpS z(7&YPY>xm{&lf-5z57IZx9Ij0sRsfFuU6#30$Qp&a7ry>W}k#wGwH&L zQ*zZ_=C@fKF)BK@#@ZzfxMgW}7@WK_`gl~@`D3ZU(cx+)Ao9^2Lna$00mqBA}G$D#Vb9u}?DwklNi`_thtx5Yn$Q%cU zRH>+k$q6>$Nbd#^PEpX$3!i`W0x~~3Dh|&w3#jGikw^ka`UpTMQ(sLur{=p!>Gx&f z0Nl0A+d_a(R9#Q1Haw)&I!eAl+x(y~qs}~43()LiaRLB%KJYN`TFZiv2jC{yk7#zP zRDcz0v8%rj4D3*POl`zVMU^eGHeT743E_AJPt#+79|*YA!6Tq+!h1@S>|t~y`OJpCozb4vJHB8aeLx( z+tZDHSa4g}gZkUOxv%mmHzVkp9#cY!@&z{~k}W}1r#Je~y_2FT;%XIrz!z9Zi^x75 zpuHiV^!3rYt&GsxMAFU35-xWNZo)W8Xp^8Jt*(DQly>~gV{T&DV`3GfEq7M^Bpdz) zI(n(lF5M&fSKHO|doMn5mYx|Owmn+f%gIf;11I^VM!ne*wov?}MBA0`EK_CY>r{$7 z>Y%pIfW@)Q0>NZ{z1$!jsO1PpP>eju_O87$LKRHx8L_=l^odww{ii@kT zt!WDE54G4chDbn@fekJ*VAjb9Dn*yUaCLn+;1-2kSOq|`Z!k~XV-GY`YPC!QUC1`H zN>5+*7LCWj@nos**?mQi6{)Q8-1&y?MYm3MZouG>SUDx7&yU-P-jrW^OGHkVY)v%++Nfj6f?(`FKw? zvyzR?vI0rr;hiZEurGApEYm$dQlskbut#<-64#k&(-Q+2E2>E~jq*A3N56j-OMu=i zADtWYg0??u)N&FCu|H4cQW|3S7Q$N?x3RwcCMKJh$CqTn0|Y5>TRk&KHWt6EC7+rn zVz00br%SKm(Q;9v&WuKs?K?T zJhc*DMaU&_FA3*b3#8duJd5kNsn~8Elka_G(IOaVz}cNs@yrL^BMIc`J>1Q7^^zTd z2;ZXTwg=L6V?^U4;tlM6G#uAtjc-dY!k+2*xKW#%b&6XZNIQRHsrOM&Tylb0K_CKu zBVDLcw)l1N-k_uR&yKPAMTJPdVCpI7_5Y$zXIY`AAdG(z#)Jn1O4(!;+(ZB^7m z1D7#xemsv#Ja<)7D?A5Hs&#^w|I)O@_?Rl!bP&<4Bx2o}3|syv=}Y6T`KXi#q^;yhv3C~Dx1y~OgGk2S5M z281B6xUQTpjlu1#4a4KiM!on(eHTUt7Jy)osLjLx<(ot*uBEVA zw@QYUBuWYLQRgPST)0&Q(N=zQfihHL9Lx!1IusiW%aH-HO7nW5`i@j~G@l4?%#$u5 zuUZl+p=N|jH%m-UCrXQffCP&jqO`mr*dQJSVFryIL>_GjP?oF}3;3e*Cdfs_Ef=lC z!f(ISJ>TFL$+ttYZ8ez#5uol0Qq|gbpdvyPXyfdE?el>1HRlH#c|ISp9Cy>Jb#s1Ah1kN~xWx3x zAP*AHa6jcrYq)391%_L8AU&R+L>`>jw5mOSBoQVO5zhFLGb_*C3)m5NoBaO7qhws< z;-HOvn8nVVO0avMARPkfdCRy_b+#gzE{nn4()QsvhW^D)RDld5fZ$*dhDrvDzbNfw zKQA>h|0Xh5?b;F8gA2fG(|(gpq2_*=_Lx3N*>!z^6fK)`yQNkkb0ij=f(oczdwVyC z_qy@&f@tZ%fTR!k<$^#Epz(>G8@jc{dc(B5fH4QM>$^`oRa^kg9s})dT^NO+6Ob9Q zms-w7Yh(oo5tgsz5>zr6b^FH~E6Ef!PA7WT%jYNEr|Q>v zvr?z(Hr1I6*orOVqL=EqeH+^!a~CYXE@ezs)eGWwe_>c3$W{&*?`RlWNkm+DCmyK_ z4|?I@^zKaWW$#F}Tgwu&*8;CB?9BC5)sh*KU2wx5)?#{%(M2elQ#QPQSP)}_#3D*Gs^>S#5|(p|HQ zdp0z`aOqLP<%kD6Bs+alQ!b`rloDW*s$im>j^@@Q&B5D=eedpKo7@yJ&t|#IT(Lle zTFSLG6O#t#Lc^O-t8{)rFVVC09qH1JGTIVP?`_o|RCkeW6p904_R0<-?H)|#BnMI6qWXN!N!t^nB7=(c5WF>$M^c8e9VYSJm07shj=RQw@S+pc;&9EeSLqkktwOl!p zi(fdT!pURt+_m3bmcs5j`q#3rTZ8A8;m~dD?R2|(H{^|M6Pd-?VeJse#w&We9eTpk z;#IfQ*I3CpDoJYU+S$6}XFN}#MhSrBW6w`9Hk)cpfuZ~dkTu>@BHMnS3l|I5+1E~;q~6;DB{Rq{#Ck6irL-Q}>B^Vid%Vjs zYiKGjvU3k}{VBk%=}@kiY%{_E!yl!O&c6TZX22j=^xHmk3nQ-0XK5FE;>h4Rqg8sV zfM|eXNdghS(_RX-7Zi~Tv!8Kndn94wFuomULID|1!Qle6-4$|Dt{CEu-kTxu}z#yQO5HGR52%oB<*>-2VElE z(U5V3r}P{b1VHRuqKD4($9vDc@-|^QC-Rd=CsMyZuKPhV2T2l2czW?W|q7 z4;8BTAQ;7NdPA3u+7!M11vGE3K~DlE?d7g(Tr!dJo2v-q7YYpwII&<*o_fq?%*i%# zkklif zu~z@&ZL6K44P>hHDe7*i<_(k26v@T9IeC}ddckc%ebq2vA_h|&!xwyO+gGSxe!XihVOMXckxROpqPs$chkhMPwL9-P~+T`Jj4H z$!K?H=tZ5aZ;}Ah@#KDfp4&*L8rKz;{=A(tY(|E9 zcFWp%Tr(@QjxSK_x>caknWnvubVslGt2Uln&S<$AsoOrWj!sfY7zGY6WsUeA+e~4L z`{39_C|jj*1&b+=&&SB0)o!T~W|YV)VV4F<Lkq#6QR?wNsBbyCD}V^v-0svw1_m3_(p=P>Krxe z8Ce-wy=)Lm6nY$eOF!*)-p`G3Ox5|{7al0PHU>u4c?cOWE=s16N50yHJ4<8wNPP65 z6;+8{BA#MYC7m2RPQ*2*;2ar1a3Iaw9$mgl@C z!h)9BEJT8HkR&(@@b_v3itt~j8i!Xd`nu^d5Ejk^M`MiTNlQm32YdV9u^0<8LrarW zSVw0QjI+z{A`2^XQ?!vW-v0FO@clREa6p+%{6JZVT=h7QJ2$_=5jRDD`frY6Y(Ks} zx-0j?+*UoTXtBUR^0t)3uNvP07*8@5t3lPpy|EFBC3{VlRu=H z5ZXUk%>hd2WtY#$JOW#3!_$q`5Cc^j+ly;?#^vn!=Hk(9->41@HY=v zM~FTl$srjn*^YCmbhD4##v+%BKinpX*5<2`4y}fog-yAktf6)9*L`6W0#4} zdFl=Nx~_JBs+VN}G=4dg8$veX~`3%e*25#jCe- zNwSI3Y%HVpswS4D9VQlX`~=xIx#>AG(0K9Za@}hjSf(;?#+1LAYfuI z`SW=)weCR7a}AnZZ^|J0OuX%p41uw{j>wmV@c4aJB#L?CD@MqsLuAeD>L8dQH&qht zIYH-E5YJGK25ue4e@Gh?yy=j(LeO=U?c6*{{2isPopi%bdrwd9Xly?g^-Mo!J+ z)_nqdP**{0%PbNNwb&hvBlmtjyR9LTzpf?)%-lNt`1S*cJq`fA$8C5U-f$hX6|s6e z_ga6mH$>Gp>6wpG$Tz-I%vQ^hw(dYtL;&B+UcOFqwkM#$e_+y(@|s_`>+lC-Ejb7atUPQdy=$K`ToxAq^0q=~M@ES5ob!UQn zJp2*9-i4}#dfm$9PzjL?lec%!4D_#C#<}D&m+#miSLb^YB_uyQ@deo_{Om_@FT|$a zJy}!czm(xn~+u@ptLlz!<(>JY*;h_jS^$&VA-kNy>EHDhA1gah8%Ma z#}k~h<6vBOZ?`*CXy3u-4cno^gM5c(>3}v9G`*88booj~fT&O>kB z*u$gW3@(yko$I~q^ajVP=-yQu0Ael)BxliI)&TkPf45KoRX93ff3Rjz{E zxrbXGhAu4N4GQHw*@*s?TgwH@(fgD_t~3QYFx$S3T`ndvI|!CVA79bKNH^Q0R)J!K zVMQ;7NLfV6uv%4hu@eUd;q^np@D0}lgs)(HHY;2esPmx@MMl~4V}~)+!84N2!L#JkGXUm28!GM=) ztCSk-+STkxH{(;UwJ*e&9x>}cj&vaoQe8i=8P>TVMm(?p^xGwfS(T`S8*8i#VCDz@ z2tv3OvJm;fdhI^GYl*|xU%X99hNZnX98y-|Rr&VWHLWb0VMDk@`t?x?WF~^jh|Q-~ zU1y+KsD%7vFJ6-_?Z{X2<`;Uky>7R0wtLSk==EaC+k}*0_xuNs+9i|w{T}!+0G2Pg zpeP%`2gwT+{RAz8{Y<=r?LUZsZ!Cf>60#p$zw+jX(Qn0B zBzyo-Bg`55Kj)#ojjD9_z)CyHwamH=g>x-t!7B9cyE-9t*XIp)4=AdynUbB}=^1c8 z=@R{Qo5u{Vl%96t8Yt(Sxy2Ql*E_`4Kg^tU_jHXrIn_@AcdC=p;h&zqwkK0kcT1)H zc-p<%(B1kEdj5IK)h4aD-tUXNQgN^XCcY0Pc}LF@Ns=Bq>A^wyEI}MUMImR-$IC}- z4ZHb=c_qHmrQHe(mMMfW)CSLdcnl;aG%9v+l`7&=DN9zQdizjxJH6C4+;t z!3n=FshCx)lo&&~vkA7hKvm)gf&ilzvRyfn4b@~+y{UtBU@=t6HwXC$GBqd{`Zt;c z)bI3iIPTZe4URdiP z){GaFmSUFpWnBbE^Gm+~v2Cn#HW4)FKS;Vm@7{M(1M8?cOuE!KJ@Xk1`-v9F@$@+2>*Kf>O}5+Njcn_*18e+~bdnF7sNfuzB=Dp3Ui65VM-yO7#c zLHzG8ZF{L)3K44DM2S6&u#KvN8^3hI^0g(|Huna<*)0aHU2c=}J!No%xhpSMV-v8u z#e9G?<9R7qP|%k1i5w>miNvOB*vH>EiHcpSfM)D&!!Zp>i|*2A39CLCZ1EQ7h=}IL z)42iY<^fAH6rhY|9a{_51TtlMq2KfwZXYxnu~k}x-CORz1kE?(V$>nE=KWxB%G2tm zoi1Nl2B>>ME+-LveYG{XSX=_EApvtE6=bw?cAMbwA%9Dy&+^vLlMftUEr=c&4dv&2vHqem za%I%KFTEvQ?d?8kZ7tO#P;z`|y~q#@{Axe1_}zLj(8ZcXP50cTR+om9xz9^W-CK+K zJ_m z!HJJmVTpe>4rekKxT}P`m}c>*1`+l^>cwWrl^@?eUb}Ye*)QRhS=&hrHNAp4DT{8b zJY)a>QBx=A*eLDubUOO-JOM{0jGlLAl6i-r;p&}?a|`Ap8psI`bzxL;KMQk7=^B3F zm=Ew&2FMOOoet;Q-p<2eOT4Eaq3u|_goZ1NTMOPtp6e?m+D zNc~v4#kn@>`)Q3ppKo+PQ{{~ggonmE9q9qdvR%v1R^P!=l4e`4gi*XHHD6h;3HN|W zo*rZi*|~8pJeX=&KbMN)V9UkbrC9reRM&g+1BCoFbPFg>T#*?8AfTTbOE0>k0jT*) z8=p|ENkR#^H)CJ!(RD@m0|6{uQJvOIA8Ixpi5HZ<*tt+X9R*gHXu2|`J)>%%tdNp_ zJcaOagNvPcFX%MFYRiL<_WHb!$E(ufYv0I|Ca$Xr(=6>j0PH!S$w|QNcewG#b)v`P z5~Il_aLec*h&Z*50?7p5zyZIxu4R z(}3blfnPUm(uCm6YDq8VjI9*S`Pf8&hJg&+NGhR&Z`0p#tL8wfeC2x9XWfF;Tq|MGdGu0i@9hR6ggIL{9=cUjlerZMqHbfWQnPzz}2d0+zv$l3qwzr!7Wm^%yebASd4B668ZD8rjCmGrq2Ke5z*VtN7`E^Pze#q z_SlL2)OxwdR5jbw=k|fi(vgKAGdk>gMeP+qDwHsnji`2DGESP30|R=Dn%D;>sRlh! z1=+^ymBCV`B(>=p9mRvRoTl1k&{N&+JlQMC4JkTo#Zjd^Jj(f+lL7U+-WjiHcL1E< zaMdpzx49c!>5U3 z#7Uy&O8rBx^*gfb*&Msi{94`#oIKc#d<>ZUG^6rsbx?AHnZxBkK<&_#d*8^xoW6}l z7LU?8)ADNef4!{z-6T^w+0Hl>RZs8R7D*;GUk+|eamCqT4eT-;@Wk~dAw-;HgSnix zV8Ucie2XBHtypRs^#Iu-8wT#N*U34+GI=~eV#FFSqlRV{*MM`t5>}9*r}8Img@AO__f{Z z)u&d;pGffaUN8U?0#8B#!%3Vy1D3D-Ts%WM#IQwrnvb57Q>b~&GD&_Ijj!3D_e;Lo zG(bB$aHDUA=^L+kj}zf>`5Sp6t~X=7Jc6%W4*rd}3Ig1aV17CXepz@GoCS)FXG0<@H;pe8EKeRtgD&N-qgx|Z*Xb+&Fy?TF-Dd+`h=U<26@E0I7Hy((J z_0!`1efD>ViIJtbp$Xm|_dDYEa9KRWID8t1ulV_Cs* z!Hb-y&jwsJ_Vf4gcxwmH-i&pNo|xv8zcOc4M48EKw%Si=r*!F_kfpwLI_efGx_sAa z)7W9hGG*9_-zY6?f?0S5D2?R-1h@(D|fydOAIZ2)Fs# z8ePW5Z9QfV7`IYy#;g#$7q8x=eyZ!twy+K8=)4!YbFa51HMLA!1IevVK%(XV?OCLY zk%IO0GnWk7~Q6PQ=mIiGtVau>*aXf_wzni{2H#UxciJ)B9!ZDau+uv z&d3c2nsCJkl-1qoeg+au0+>-#zEAqf_6B15HZPQ%eSX!&0T{|>&$*xyG-^s$&VgYA z+=vYH2!2eE!|@U3a_>k0=Z6@1igU?8BY?#>8snWC9U+Uux@BW2R$)(<-qBs)k#z_1 zWoST_oBD!r#D;DXoSCgwK=1kygz-)5P z=)ih2xmA9Dd#fMT%`wpYQFAZK14x`pZ0mc;RI4Tq^a(xfQg=8@F4h|FsZXd1DvGjr zWjGX|$j=kk0nrniEhPAG^AvAuzbbnps6c0C&j3Jw`FVCsU6L#^>#aA0k%ki2+l}{6 zf0m7WrJvw|b_b~*^=kjxq>$vq_RX+LcBMW}dn1sN^PI<6O6WSVbw6HFneaV$lf?rN z{Xks0k%d)F(itjZXWeS&bYrMd<*F@uD)(JO09TW;v=~J~M=21yrdpjlVW@0@%8$6P zU;e_)0n^MXo)lSU@YL7a+}dwI6Ax|P78-P~WSAWxJ}nspeTgMLbDt5?)km%LKDJUB z+?Jy9_Qfiwm8xa4+RkJpuS{|?e(Wh0&h9)>*Z-!m8> zxH`2*7R(h>`UpG2fy!h7mhF}tH20!zmED{33LHkJMzD6H8Lvs#AgUhdH^BRB4*+#Nldeo8?fveNB{tS zI^W&H{AIHDLmIaJ)6vJn&`h+V8}8rP%bN!)oRt~bj7@+504R#JrcS@yuQRO<+SsMG z*sCadv-XS?F(cdFikYW|X_&TJ88tGJZQ4#p-)>~@MbNb6W!9imRi@j7CERK?8w?gs zim0?kpjF0ViRJ8mMXxf03NDgZ7_#STR+6W4sH`levX&AZ3$52J0JO!0TCFHcFN(38 zqob5O&;U+INR%FY7H!t8bD4n*ccoi2`apEp7LzfQ5v5P! z;6ci_3y1q8a+x{zrC+nnzYo}6uV=4sTc25@?T`d6lfonb0Pok<;~Z_{;|CmTqurEE zpJ{6r+G6b2f2RWuv^K`Vti|KUn-`zmKN?@Lvo}l&ODmZ&TD3C``!#1@lfh1L70Zg{ zp2|3iqc{iytI`^hK@QwmvaGiUxmFdmx~d1s*th+Pqe@1WVS0LcC|O?C#hta!K35#Y zku^P)4#L3n$jchVm$hn|%1X;=IcYCz%Q(Nj;!fj*^`xIB|QytbZ6dIC0SX!uKTJej_$04tfU9PiX&@! zdSGO!SJg!_ECxtmdX`lN0G`A1S+?qZ=Cm%BL6*T%*wg@Ewr+LOWm(cUAA$<0MFuNt JZQC0v>H^Bpe{lc+ diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/generic_blocks_2.png b/src/main/resources/assets/furenikusroads/textures/block/cement.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/generic_blocks_2.png rename to src/main/resources/assets/furenikusroads/textures/block/cement.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/generic_blocks_1.png b/src/main/resources/assets/furenikusroads/textures/block/clinker.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/generic_blocks_1.png rename to src/main/resources/assets/furenikusroads/textures/block/clinker.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/generic_blocks_0.png b/src/main/resources/assets/furenikusroads/textures/block/crushed_rock.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/generic_blocks_0.png rename to src/main/resources/assets/furenikusroads/textures/block/crushed_rock.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/generic_blocks_3.png b/src/main/resources/assets/furenikusroads/textures/block/limestone.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/generic_blocks_3.png rename to src/main/resources/assets/furenikusroads/textures/block/limestone.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_blue.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_blue.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_blue.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_blue.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_concrete_1.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_concrete_1.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_concrete_1.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_concrete_1.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_concrete_2.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_concrete_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_concrete_2.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_concrete_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_dark.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_dark.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_dark.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_dark.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_fine.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_fine.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_fine.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_fine.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_green.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_green.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_green.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_green.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_light.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_light.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_light.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_light.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_muddy.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_muddy.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_muddy.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_muddy.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_muddy_dried.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_muddy_dried.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_muddy_dried.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_muddy_dried.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_pale.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_pale.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_pale.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_pale.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_red.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_red.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_red.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_red.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_standard.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_standard.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_standard.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_standard.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_white.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_white.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_white.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_white.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_block_yellow.png b/src/main/resources/assets/furenikusroads/textures/block/roads/road_block_yellow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_block_yellow.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/road_block_yellow.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/sidewalk.png b/src/main/resources/assets/furenikusroads/textures/block/roads/sidewalk.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/sidewalk.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/sidewalk.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_clean.png b/src/main/resources/assets/furenikusroads/textures/block/roads/sidewalk_clean.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_clean.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/sidewalk_clean.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_dark.png b/src/main/resources/assets/furenikusroads/textures/block/roads/sidewalk_dark.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_dark.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/sidewalk_dark.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_tan.png b/src/main/resources/assets/furenikusroads/textures/block/roads/sidewalk_tan.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_tan.png rename to src/main/resources/assets/furenikusroads/textures/block/roads/sidewalk_tan.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/blank.png b/src/main/resources/assets/furenikusroads/textures_archive/block/blank.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/blank.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/blank.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/bollard_black.png b/src/main/resources/assets/furenikusroads/textures_archive/block/bollard_black.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/bollard_black.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/bollard_black.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/bollard_black_ringed.png b/src/main/resources/assets/furenikusroads/textures_archive/block/bollard_black_ringed.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/bollard_black_ringed.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/bollard_black_ringed.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/bollard_ringed.png b/src/main/resources/assets/furenikusroads/textures_archive/block/bollard_ringed.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/bollard_ringed.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/bollard_ringed.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/bollard_small_portable.png b/src/main/resources/assets/furenikusroads/textures_archive/block/bollard_small_portable.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/bollard_small_portable.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/bollard_small_portable.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/bollard_small_portable_yellow.png b/src/main/resources/assets/furenikusroads/textures_archive/block/bollard_small_portable_yellow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/bollard_small_portable_yellow.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/bollard_small_portable_yellow.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/bollard_smooth_metal.png b/src/main/resources/assets/furenikusroads/textures_archive/block/bollard_smooth_metal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/bollard_smooth_metal.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/bollard_smooth_metal.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/bollard_striped.png b/src/main/resources/assets/furenikusroads/textures_archive/block/bollard_striped.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/bollard_striped.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/bollard_striped.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/bollard_topped.png b/src/main/resources/assets/furenikusroads/textures_archive/block/bollard_topped.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/bollard_topped.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/bollard_topped.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/bollard_yellow.png b/src/main/resources/assets/furenikusroads/textures_archive/block/bollard_yellow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/bollard_yellow.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/bollard_yellow.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_blue.png b/src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_blue.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_blue.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_blue.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_blue_e.png b/src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_blue_e.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_blue_e.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_blue_e.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_frame.png b/src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_frame.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_frame.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_frame.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_green.png b/src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_green.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_green.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_green.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_green_e.png b/src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_green_e.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_green_e.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_green_e.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_red.png b/src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_red.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_red.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_red.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_red_e.png b/src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_red_e.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_red_e.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_red_e.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_white.png b/src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_white.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_white.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_white.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_white_e.png b/src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_white_e.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_white_e.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_white_e.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_yellow.png b/src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_yellow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_yellow.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_yellow.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_yellow_e.png b/src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_yellow_e.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/cats_eye_yellow_e.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/cats_eye_yellow_e.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/crusher_vents.png b/src/main/resources/assets/furenikusroads/textures_archive/block/crusher_vents.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/crusher_vents.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/crusher_vents.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/crusher_vents_electric.png b/src/main/resources/assets/furenikusroads/textures_archive/block/crusher_vents_electric.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/crusher_vents_electric.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/crusher_vents_electric.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/grass_inventory.png b/src/main/resources/assets/furenikusroads/textures_archive/block/grass_inventory.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/grass_inventory.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/grass_inventory.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/hopper_in.png b/src/main/resources/assets/furenikusroads/textures_archive/block/hopper_in.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/hopper_in.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/hopper_in.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/hopper_none.png b/src/main/resources/assets/furenikusroads/textures_archive/block/hopper_none.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/hopper_none.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/hopper_none.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/hopper_out.png b/src/main/resources/assets/furenikusroads/textures_archive/block/hopper_out.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/hopper_out.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/hopper_out.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/hopper_tank.png b/src/main/resources/assets/furenikusroads/textures_archive/block/hopper_tank.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/hopper_tank.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/hopper_tank.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/hopper_tank_top.png b/src/main/resources/assets/furenikusroads/textures_archive/block/hopper_tank_top.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/hopper_tank_top.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/hopper_tank_top.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/hopper_type_item.png b/src/main/resources/assets/furenikusroads/textures_archive/block/hopper_type_item.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/hopper_type_item.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/hopper_type_item.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/hopper_type_none.png b/src/main/resources/assets/furenikusroads/textures_archive/block/hopper_type_none.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/hopper_type_none.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/hopper_type_none.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/hopper_type_red.png b/src/main/resources/assets/furenikusroads/textures_archive/block/hopper_type_red.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/hopper_type_red.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/hopper_type_red.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/hopper_type_white.png b/src/main/resources/assets/furenikusroads/textures_archive/block/hopper_type_white.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/hopper_type_white.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/hopper_type_white.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/hopper_type_yellow.png b/src/main/resources/assets/furenikusroads/textures_archive/block/hopper_type_yellow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/hopper_type_yellow.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/hopper_type_yellow.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/lineBlock1_11.png b/src/main/resources/assets/furenikusroads/textures_archive/block/lineBlock1_11.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/lineBlock1_11.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/lineBlock1_11.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/lineBlock1_12.png b/src/main/resources/assets/furenikusroads/textures_archive/block/lineBlock1_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/lineBlock1_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/lineBlock1_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/lineBlock1_13.png b/src/main/resources/assets/furenikusroads/textures_archive/block/lineBlock1_13.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/lineBlock1_13.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/lineBlock1_13.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/lineBlock1_14.png b/src/main/resources/assets/furenikusroads/textures_archive/block/lineBlock1_14.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/lineBlock1_14.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/lineBlock1_14.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/lineBlock1_15.png b/src/main/resources/assets/furenikusroads/textures_archive/block/lineBlock1_15.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/lineBlock1_15.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/lineBlock1_15.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/lineBlock1_16.png b/src/main/resources/assets/furenikusroads/textures_archive/block/lineBlock1_16.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/lineBlock1_16.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/lineBlock1_16.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_glass.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_glass.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_glass.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_glass.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_hazard.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_hazard.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_hazard.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_hazard.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_metal.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_metal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_metal.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_metal.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_metal_dark.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_metal_dark.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_metal_dark.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_metal_dark.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_metal_electric.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_metal_electric.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_metal_electric.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_metal_electric.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_metal_patterned.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_metal_patterned.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_metal_patterned.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_metal_patterned.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_metal_patterned_electric.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_metal_patterned_electric.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_metal_patterned_electric.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_metal_patterned_electric.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_part_dark.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_part_dark.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_part_dark.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_part_dark.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_part_plain.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_part_plain.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_part_plain.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_part_plain.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_part_plain_electric.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_part_plain_electric.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_part_plain_electric.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_part_plain_electric.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_piping.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_piping.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_piping.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_piping.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_vent_back_off.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_vent_back_off.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_vent_back_off.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_vent_back_off.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_vent_back_on.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_vent_back_on.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_vent_back_on.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_vent_back_on.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/machine_vent_back_on_e.png b/src/main/resources/assets/furenikusroads/textures_archive/block/machine_vent_back_on_e.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/machine_vent_back_on_e.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/machine_vent_back_on_e.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/manhole_no_rust.png b/src/main/resources/assets/furenikusroads/textures_archive/block/manhole_no_rust.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/manhole_no_rust.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/manhole_no_rust.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/manhole_slight_rust.png b/src/main/resources/assets/furenikusroads/textures_archive/block/manhole_slight_rust.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/manhole_slight_rust.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/manhole_slight_rust.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_a.png b/src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_a.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_a.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_a.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_a_electric.png b/src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_a_electric.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_a_electric.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_a_electric.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_b.png b/src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_b.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_b.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_b.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_b_electric.png b/src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_b_electric.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_b_electric.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_b_electric.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_c.png b/src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_c.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_c.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_c.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_c_electric.png b/src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_c_electric.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_c_electric.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_c_electric.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_display.png b/src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_display.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/paint_filler_machine_display.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/paint_filler_machine_display.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/paint_gun.png b/src/main/resources/assets/furenikusroads/textures_archive/block/paint_gun.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/paint_gun.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/paint_gun.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/paint_red.png b/src/main/resources/assets/furenikusroads/textures_archive/block/paint_red.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/paint_red.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/paint_red.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/paint_white.png b/src/main/resources/assets/furenikusroads/textures_archive/block/paint_white.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/paint_white.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/paint_white.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/paint_yellow.png b/src/main/resources/assets/furenikusroads/textures_archive/block/paint_yellow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/paint_yellow.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/paint_yellow.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/pneumatic_drill.png b/src/main/resources/assets/furenikusroads/textures_archive/block/pneumatic_drill.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/pneumatic_drill.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/pneumatic_drill.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_factory_machine_a.png b/src/main/resources/assets/furenikusroads/textures_archive/block/road_factory_machine_a.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_factory_machine_a.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/road_factory_machine_a.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_factory_machine_a_electric.png b/src/main/resources/assets/furenikusroads/textures_archive/block/road_factory_machine_a_electric.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_factory_machine_a_electric.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/road_factory_machine_a_electric.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_factory_machine_b.png b/src/main/resources/assets/furenikusroads/textures_archive/block/road_factory_machine_b.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_factory_machine_b.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/road_factory_machine_b.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/road_factory_machine_b_electric.png b/src/main/resources/assets/furenikusroads/textures_archive/block/road_factory_machine_b_electric.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/road_factory_machine_b_electric.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/road_factory_machine_b_electric.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_kerb.png b/src/main/resources/assets/furenikusroads/textures_archive/block/sidewalk_kerb.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_kerb.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/sidewalk_kerb.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_kerb_red.png b/src/main/resources/assets/furenikusroads/textures_archive/block/sidewalk_kerb_red.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_kerb_red.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/sidewalk_kerb_red.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_kerb_yellow.png b/src/main/resources/assets/furenikusroads/textures_archive/block/sidewalk_kerb_yellow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_kerb_yellow.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/sidewalk_kerb_yellow.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_red.png b/src/main/resources/assets/furenikusroads/textures_archive/block/sidewalk_red.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_red.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/sidewalk_red.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_white.png b/src/main/resources/assets/furenikusroads/textures_archive/block/sidewalk_white.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_white.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/sidewalk_white.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_yellow.png b/src/main/resources/assets/furenikusroads/textures_archive/block/sidewalk_yellow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/sidewalk_yellow.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/sidewalk_yellow.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_12.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_13.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_13.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_13.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_13.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_17.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_17.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_17.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_17.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_0.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_1.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_1.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_1.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_1.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_10.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_10.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_10.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_10.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_11.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_11.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_11.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_11.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_12.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_13.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_13.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_13.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_13.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_14.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_14.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_14.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_14.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_15.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_15.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_15.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_15.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_2.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_3.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_3.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_3.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_3.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_4.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_5.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_5.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_5.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_5.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_6.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_6.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_6.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_6.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_7.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_7.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_7.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_7.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_8.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_9.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_9.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_a_9.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_a_9.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_0.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_1.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_1.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_1.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_1.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_10.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_10.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_10.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_10.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_11.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_11.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_11.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_11.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_12.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_13.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_13.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_13.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_13.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_14.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_14.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_14.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_14.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_15.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_15.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_15.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_15.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_2.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_3.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_3.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_3.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_3.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_4.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_5.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_5.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_5.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_5.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_6.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_6.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_6.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_6.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_7.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_7.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_7.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_7.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_8.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_9.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_9.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_block_b_9.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_block_b_9.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/street_light_bulb.png b/src/main/resources/assets/furenikusroads/textures_archive/block/street_light_bulb.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/street_light_bulb.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/street_light_bulb.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/tactile_paving.png b/src/main/resources/assets/furenikusroads/textures_archive/block/tactile_paving.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/tactile_paving.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/tactile_paving.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/tar_distiller_machine_a.png b/src/main/resources/assets/furenikusroads/textures_archive/block/tar_distiller_machine_a.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/tar_distiller_machine_a.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/tar_distiller_machine_a.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/tar_distiller_machine_a_electric.png b/src/main/resources/assets/furenikusroads/textures_archive/block/tar_distiller_machine_a_electric.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/tar_distiller_machine_a_electric.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/tar_distiller_machine_a_electric.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/tar_distiller_machine_b.png b/src/main/resources/assets/furenikusroads/textures_archive/block/tar_distiller_machine_b.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/tar_distiller_machine_b.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/tar_distiller_machine_b.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/tar_distiller_machine_b_electric.png b/src/main/resources/assets/furenikusroads/textures_archive/block/tar_distiller_machine_b_electric.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/tar_distiller_machine_b_electric.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/tar_distiller_machine_b_electric.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/tarmac_cutter_blade_diamond.png b/src/main/resources/assets/furenikusroads/textures_archive/block/tarmac_cutter_blade_diamond.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/tarmac_cutter_blade_diamond.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/tarmac_cutter_blade_diamond.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/tarmac_cutter_blade_gold.png b/src/main/resources/assets/furenikusroads/textures_archive/block/tarmac_cutter_blade_gold.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/tarmac_cutter_blade_gold.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/tarmac_cutter_blade_gold.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/tarmac_cutter_blade_iron.png b/src/main/resources/assets/furenikusroads/textures_archive/block/tarmac_cutter_blade_iron.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/tarmac_cutter_blade_iron.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/tarmac_cutter_blade_iron.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/traffic_bollard_left.png b/src/main/resources/assets/furenikusroads/textures_archive/block/traffic_bollard_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/traffic_bollard_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/traffic_bollard_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/traffic_bollard_left_2.png b/src/main/resources/assets/furenikusroads/textures_archive/block/traffic_bollard_left_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/traffic_bollard_left_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/traffic_bollard_left_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/traffic_bollard_right.png b/src/main/resources/assets/furenikusroads/textures_archive/block/traffic_bollard_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/traffic_bollard_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/traffic_bollard_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/blocks/traffic_bollard_right_2.png b/src/main/resources/assets/furenikusroads/textures_archive/block/traffic_bollard_right_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/blocks/traffic_bollard_right_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/block/traffic_bollard_right_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/edit.ahk b/src/main/resources/assets/furenikusroads/textures_archive/edit.ahk similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/edit.ahk rename to src/main/resources/assets/furenikusroads/textures_archive/edit.ahk diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/red_paint_flowing.png b/src/main/resources/assets/furenikusroads/textures_archive/fluids/red_paint_flowing.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/red_paint_flowing.png rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/red_paint_flowing.png diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/red_paint_flowing.png.mcmeta b/src/main/resources/assets/furenikusroads/textures_archive/fluids/red_paint_flowing.png.mcmeta similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/red_paint_flowing.png.mcmeta rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/red_paint_flowing.png.mcmeta diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/red_paint_particle.png b/src/main/resources/assets/furenikusroads/textures_archive/fluids/red_paint_particle.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/red_paint_particle.png rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/red_paint_particle.png diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/red_paint_still.png b/src/main/resources/assets/furenikusroads/textures_archive/fluids/red_paint_still.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/red_paint_still.png rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/red_paint_still.png diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/red_paint_still.png.mcmeta b/src/main/resources/assets/furenikusroads/textures_archive/fluids/red_paint_still.png.mcmeta similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/red_paint_still.png.mcmeta rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/red_paint_still.png.mcmeta diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/tar_flowing.png b/src/main/resources/assets/furenikusroads/textures_archive/fluids/tar_flowing.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/tar_flowing.png rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/tar_flowing.png diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/tar_flowing.png.mcmeta b/src/main/resources/assets/furenikusroads/textures_archive/fluids/tar_flowing.png.mcmeta similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/tar_flowing.png.mcmeta rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/tar_flowing.png.mcmeta diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/tar_particle.png b/src/main/resources/assets/furenikusroads/textures_archive/fluids/tar_particle.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/tar_particle.png rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/tar_particle.png diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/tar_still.png b/src/main/resources/assets/furenikusroads/textures_archive/fluids/tar_still.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/tar_still.png rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/tar_still.png diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/tar_still.png.mcmeta b/src/main/resources/assets/furenikusroads/textures_archive/fluids/tar_still.png.mcmeta similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/tar_still.png.mcmeta rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/tar_still.png.mcmeta diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/white_paint_flowing.png b/src/main/resources/assets/furenikusroads/textures_archive/fluids/white_paint_flowing.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/white_paint_flowing.png rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/white_paint_flowing.png diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/white_paint_flowing.png.mcmeta b/src/main/resources/assets/furenikusroads/textures_archive/fluids/white_paint_flowing.png.mcmeta similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/white_paint_flowing.png.mcmeta rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/white_paint_flowing.png.mcmeta diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/white_paint_particle.png b/src/main/resources/assets/furenikusroads/textures_archive/fluids/white_paint_particle.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/white_paint_particle.png rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/white_paint_particle.png diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/white_paint_still.png b/src/main/resources/assets/furenikusroads/textures_archive/fluids/white_paint_still.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/white_paint_still.png rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/white_paint_still.png diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/white_paint_still.png.mcmeta b/src/main/resources/assets/furenikusroads/textures_archive/fluids/white_paint_still.png.mcmeta similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/white_paint_still.png.mcmeta rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/white_paint_still.png.mcmeta diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/yellow_paint_flowing.png b/src/main/resources/assets/furenikusroads/textures_archive/fluids/yellow_paint_flowing.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/yellow_paint_flowing.png rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/yellow_paint_flowing.png diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/yellow_paint_flowing.png.mcmeta b/src/main/resources/assets/furenikusroads/textures_archive/fluids/yellow_paint_flowing.png.mcmeta similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/yellow_paint_flowing.png.mcmeta rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/yellow_paint_flowing.png.mcmeta diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/yellow_paint_particle.png b/src/main/resources/assets/furenikusroads/textures_archive/fluids/yellow_paint_particle.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/yellow_paint_particle.png rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/yellow_paint_particle.png diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/yellow_paint_still.png b/src/main/resources/assets/furenikusroads/textures_archive/fluids/yellow_paint_still.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/yellow_paint_still.png rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/yellow_paint_still.png diff --git a/src/main/resources/assets/furenikusroads/textures/fluids/yellow_paint_still.png.mcmeta b/src/main/resources/assets/furenikusroads/textures_archive/fluids/yellow_paint_still.png.mcmeta similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/fluids/yellow_paint_still.png.mcmeta rename to src/main/resources/assets/furenikusroads/textures_archive/fluids/yellow_paint_still.png.mcmeta diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/1.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/1.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/1.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/1.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/1_hovered.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/1_hovered.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/1_hovered.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/1_hovered.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/2.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/2.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/2.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/2_hovered.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/2_hovered.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/2_hovered.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/2_hovered.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/3.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/3.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/3.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/3.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/3_hovered.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/3_hovered.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/3_hovered.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/3_hovered.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/4.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/4.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/4.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/4_hovered.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/4_hovered.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/4_hovered.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/4_hovered.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/5.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/5.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/5.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/5.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/5_hovered.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/5_hovered.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/5_hovered.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/5_hovered.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/empty.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/empty_hovered.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/empty_hovered.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/empty_hovered.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/empty_hovered.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/buttons/template.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/template.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/buttons/template.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/buttons/template.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/category_list.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/category_list.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/category_list.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/category_list.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/compactor.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/compactor.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/compactor.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/compactor.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/crusher.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/crusher.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/crusher.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/crusher.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/fabricator.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/fabricator.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/fabricator.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/fabricator.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/fabricator_list.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/fabricator_list.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/fabricator_list.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/fabricator_list.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/jei_texture_1.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/jei_texture_1.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/jei_texture_1.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/jei_texture_1.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/jei_texture_2.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/jei_texture_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/jei_texture_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/jei_texture_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/jei_texture_3.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/jei_texture_3.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/jei_texture_3.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/jei_texture_3.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/paint_filler.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/paint_filler.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/paint_filler.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/paint_filler.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/paint_gun_background.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/paint_gun_background.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/paint_gun_background.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/paint_gun_background.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/paint_gun_background_2.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/paint_gun_background_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/paint_gun_background_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/paint_gun_background_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/paint_list.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/paint_list.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/paint_list.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/paint_list.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/paint_oven.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/paint_oven.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/paint_oven.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/paint_oven.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/road_factory.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/road_factory.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/road_factory.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/road_factory.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/tar_distiller.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/tar_distiller.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/tar_distiller.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/tar_distiller.png diff --git a/src/main/resources/assets/furenikusroads/textures/gui/tarmac_cutter.png b/src/main/resources/assets/furenikusroads/textures_archive/gui/tarmac_cutter.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/gui/tarmac_cutter.png rename to src/main/resources/assets/furenikusroads/textures_archive/gui/tarmac_cutter.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/cement_dust.png b/src/main/resources/assets/furenikusroads/textures_archive/item/cement_dust.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/cement_dust.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/cement_dust.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/clinker_mix.png b/src/main/resources/assets/furenikusroads/textures_archive/item/clinker_mix.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/clinker_mix.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/clinker_mix.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/coal_coke.png b/src/main/resources/assets/furenikusroads/textures_archive/item/coal_coke.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/coal_coke.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/coal_coke.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/diamond_nugget.png b/src/main/resources/assets/furenikusroads/textures_archive/item/diamond_nugget.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/diamond_nugget.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/diamond_nugget.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/limestone_dust.png b/src/main/resources/assets/furenikusroads/textures_archive/item/limestone_dust.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/limestone_dust.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/limestone_dust.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_blue.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_blue.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_blue.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_blue.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_filler_glass.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_filler_glass.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_filler_glass.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_filler_glass.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_barrel.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_barrel.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_barrel.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_barrel.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/hatch_box_red.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/hatch_box_red.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/hatch_box_red.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/hatch_box_red.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/hatch_box_white.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/hatch_box_white.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/hatch_box_white.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/hatch_box_white.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/hatch_box_yellow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/hatch_box_yellow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/hatch_box_yellow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/hatch_box_yellow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_crossing_diagonal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_crossing_diagonal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_crossing_diagonal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_crossing_diagonal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_far_side.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_far_side.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_far_side.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_far_side.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_far_side_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_far_side_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_far_side_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_far_side_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_filter_lane.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_filter_lane.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_filter_lane.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_filter_lane.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_middle_dash_double.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_middle_dash_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_middle_dash_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_middle_dash_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_middle_half_double.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_middle_half_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_middle_half_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_middle_half_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_middle_short.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_middle_short.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_middle_short.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_middle_short.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_side_double.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_side_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_side_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_side_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_side_double_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_side_double_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_side_double_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_side_double_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_side_short.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_side_short.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_side_short.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_side_short.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_side_single.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_side_single.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_side_single.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_side_single.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_side_single_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_side_single_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_side_single_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_side_single_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_double.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_double_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_double_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_double_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_double_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_double_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_double_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_double_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_double_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_double_thick_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_double_thick_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_double_thick_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_double_thick_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_full.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_full.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_full.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_full.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_full_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_full_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_full_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_full_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_thick_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_thick_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_straight_thick_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_straight_thick_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_thin_crossing.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_thin_crossing.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_red_thin_crossing.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_red_thin_crossing.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_crossing_diagonal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_crossing_diagonal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_crossing_diagonal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_crossing_diagonal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_far_side.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_far_side.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_far_side.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_far_side.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_far_side_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_far_side_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_far_side_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_far_side_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_filter_lane.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_filter_lane.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_filter_lane.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_filter_lane.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_middle_dash_double.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_middle_dash_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_middle_dash_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_middle_dash_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_middle_half_double.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_middle_half_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_middle_half_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_middle_half_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_middle_short.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_middle_short.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_middle_short.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_middle_short.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_side_double.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_side_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_side_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_side_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_side_double_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_side_double_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_side_double_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_side_double_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_side_short.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_side_short.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_side_short.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_side_short.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_side_single.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_side_single.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_side_single.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_side_single.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_side_single_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_side_single_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_side_single_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_side_single_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_double.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_double_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_double_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_double_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_double_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_double_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_double_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_double_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_double_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_double_thick_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_double_thick_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_double_thick_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_double_thick_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_full.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_full.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_full.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_full.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_full_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_full_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_full_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_full_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_thick_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_thick_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_straight_thick_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_straight_thick_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_thin_crossing.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_thin_crossing.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_white_thin_crossing.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_white_thin_crossing.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_crossing_diagonal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_crossing_diagonal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_crossing_diagonal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_crossing_diagonal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_far_side.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_far_side.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_far_side.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_far_side.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_far_side_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_far_side_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_far_side_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_far_side_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_filter_lane.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_filter_lane.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_filter_lane.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_filter_lane.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_middle_dash_double.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_middle_dash_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_middle_dash_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_middle_dash_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_middle_half_double.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_middle_half_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_middle_half_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_middle_half_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_middle_short.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_middle_short.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_middle_short.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_middle_short.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_side_double.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_side_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_side_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_side_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_side_double_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_side_double_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_side_double_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_side_double_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_side_short.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_side_short.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_side_short.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_side_short.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_side_single.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_side_single.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_side_single.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_side_single.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_side_single_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_side_single_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_side_single_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_side_single_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_double.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_double_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_double_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_double_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_double_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_double_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_double_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_double_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_double_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_double_thick_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_double_thick_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_double_thick_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_double_thick_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_full.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_full.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_full.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_full.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_full_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_full_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_full_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_full_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_thick_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_thick_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_straight_thick_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_straight_thick_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_thin_crossing.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_thin_crossing.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/line_yellow_thin_crossing.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/line_yellow_thin_crossing.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_01.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_01.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_01.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_01.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_01_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_01_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_01_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_01_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_23.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_23.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_23.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_23.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_23_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_23_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_23_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_23_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_45.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_45.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_45.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_45.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_45_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_45_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_45_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_45_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_67.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_67.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_67.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_67.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_67_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_67_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_67_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_67_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_89.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_89.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_89.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_89.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_89_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_89_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_89_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_89_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_ab.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_ab.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_ab.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_ab.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_ab_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_ab_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_ab_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_ab_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_cd.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_cd.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_cd.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_cd.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_cd_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_cd_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_cd_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_cd_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_ef.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_ef.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_ef.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_ef.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_ef_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_ef_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_ef_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_ef_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_gh.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_gh.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_gh.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_gh.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_gh_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_gh_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_gh_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_gh_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_ij.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_ij.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_ij.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_ij.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_ij_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_ij_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_ij_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_ij_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_kl.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_kl.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_kl.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_kl.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_kl_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_kl_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_kl_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_kl_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_mn.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_mn.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_mn.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_mn.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_mn_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_mn_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_mn_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_mn_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_op.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_op.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_op.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_op.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_op_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_op_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_op_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_op_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_punct_hash_slash.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_punct_hash_slash.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_punct_hash_slash.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_punct_hash_slash.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_punct_hash_slash_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_punct_hash_slash_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_punct_hash_slash_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_punct_hash_slash_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_punct_question_exclamation.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_punct_question_exclamation.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_punct_question_exclamation.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_punct_question_exclamation.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_punct_question_exclamation_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_punct_question_exclamation_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_punct_question_exclamation_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_punct_question_exclamation_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_qr.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_qr.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_qr.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_qr.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_qr_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_qr_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_qr_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_qr_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_st.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_st.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_st.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_st.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_st_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_st_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_st_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_st_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_uv.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_uv.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_uv.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_uv.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_uv_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_uv_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_uv_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_uv_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_wx.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_wx.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_wx.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_wx.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_wx_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_wx_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_wx_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_wx_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_yz.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_yz.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_yz.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_yz.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_yz_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_yz_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_red_yz_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_red_yz_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_01.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_01.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_01.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_01.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_01_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_01_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_01_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_01_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_23.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_23.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_23.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_23.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_23_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_23_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_23_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_23_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_45.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_45.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_45.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_45.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_45_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_45_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_45_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_45_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_67.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_67.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_67.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_67.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_67_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_67_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_67_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_67_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_89.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_89.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_89.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_89.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_89_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_89_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_89_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_89_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_ab.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_ab.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_ab.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_ab.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_ab_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_ab_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_ab_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_ab_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_cd.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_cd.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_cd.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_cd.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_cd_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_cd_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_cd_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_cd_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_ef.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_ef.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_ef.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_ef.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_ef_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_ef_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_ef_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_ef_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_gh.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_gh.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_gh.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_gh.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_gh_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_gh_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_gh_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_gh_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_ij.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_ij.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_ij.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_ij.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_ij_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_ij_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_ij_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_ij_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_kl.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_kl.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_kl.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_kl.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_kl_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_kl_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_kl_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_kl_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_mn.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_mn.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_mn.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_mn.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_mn_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_mn_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_mn_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_mn_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_op.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_op.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_op.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_op.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_op_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_op_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_op_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_op_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_punct_hash_slash.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_punct_hash_slash.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_punct_hash_slash.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_punct_hash_slash.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_punct_hash_slash_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_punct_hash_slash_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_punct_hash_slash_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_punct_hash_slash_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_punct_question_exclamation.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_punct_question_exclamation.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_punct_question_exclamation.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_punct_question_exclamation.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_punct_question_exclamation_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_punct_question_exclamation_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_punct_question_exclamation_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_punct_question_exclamation_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_qr.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_qr.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_qr.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_qr.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_qr_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_qr_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_qr_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_qr_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_st.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_st.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_st.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_st.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_st_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_st_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_st_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_st_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_uv.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_uv.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_uv.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_uv.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_uv_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_uv_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_uv_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_uv_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_wx.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_wx.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_wx.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_wx.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_wx_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_wx_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_wx_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_wx_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_yz.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_yz.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_yz.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_yz.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_yz_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_yz_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_white_yz_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_white_yz_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_01.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_01.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_01.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_01.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_01_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_01_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_01_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_01_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_23.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_23.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_23.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_23.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_23_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_23_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_23_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_23_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_45.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_45.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_45.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_45.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_45_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_45_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_45_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_45_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_67.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_67.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_67.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_67.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_67_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_67_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_67_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_67_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_89.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_89.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_89.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_89.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_89_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_89_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_89_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_89_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_ab.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_ab.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_ab.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_ab.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_ab_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_ab_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_ab_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_ab_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_cd.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_cd.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_cd.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_cd.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_cd_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_cd_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_cd_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_cd_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_ef.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_ef.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_ef.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_ef.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_ef_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_ef_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_ef_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_ef_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_gh.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_gh.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_gh.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_gh.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_gh_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_gh_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_gh_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_gh_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_ij.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_ij.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_ij.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_ij.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_ij_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_ij_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_ij_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_ij_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_kl.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_kl.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_kl.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_kl.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_kl_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_kl_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_kl_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_kl_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_mn.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_mn.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_mn.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_mn.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_mn_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_mn_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_mn_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_mn_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_op.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_op.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_op.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_op.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_op_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_op_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_op_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_op_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_punct_hash_slash.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_punct_hash_slash.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_punct_hash_slash.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_punct_hash_slash.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_punct_hash_slash_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_punct_hash_slash_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_punct_hash_slash_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_punct_hash_slash_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_punct_question_exclamation.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_punct_question_exclamation.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_punct_question_exclamation.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_punct_question_exclamation.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_punct_question_exclamation_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_punct_question_exclamation_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_punct_question_exclamation_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_punct_question_exclamation_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_qr.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_qr.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_qr.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_qr.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_qr_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_qr_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_qr_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_qr_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_st.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_st.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_st.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_st.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_st_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_st_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_st_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_st_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_uv.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_uv.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_uv.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_uv.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_uv_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_uv_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_uv_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_uv_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_wx.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_wx.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_wx.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_wx.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_wx_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_wx_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_wx_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_wx_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_yz.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_yz.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_yz.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_yz.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_yz_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_yz_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/paint_letter_yellow_yz_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/paint_letter_yellow_yz_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_arrow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_arrow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_arrow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_arrow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_arrow_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_arrow_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_arrow_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_arrow_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_arrow_diagonal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_arrow_diagonal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_arrow_diagonal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_arrow_diagonal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_arrow_diagonal_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_arrow_diagonal_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_arrow_diagonal_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_arrow_diagonal_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_arrow_line.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_arrow_line.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_arrow_line.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_arrow_line.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_bike.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_bike.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_bike.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_bike.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_bike_icon.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_bike_icon.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_bike_icon.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_bike_icon.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_bus.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_bus.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_bus.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_bus.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_left_a.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_left_a.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_left_a.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_left_a.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_left_a_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_left_a_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_left_a_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_left_a_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_mid_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_mid_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_mid_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_mid_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_mid_left.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_mid_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_mid_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_mid_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_mid_left_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_mid_left_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_mid_left_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_mid_left_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_mid_right.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_mid_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_mid_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_mid_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_mid_right_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_mid_right_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_mid_right_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_mid_right_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_right_a.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_right_a.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_right_a.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_right_a.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_right_a_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_right_a_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_right_a_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_right_a_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_side_line.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_side_line.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_chevron_side_line.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_chevron_side_line.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_city.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_city.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_city.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_city.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_clear.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_clear.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_clear.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_clear.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_crossing_paint.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_crossing_paint.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_crossing_paint.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_crossing_paint.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_ctre.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_ctre.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_ctre.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_ctre.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_entry.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_entry.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_entry.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_entry.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_give_way.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_give_way.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_give_way.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_give_way.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_a.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_a.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_a.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_a.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_a_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_a_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_a_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_a_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_a_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_a_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_a_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_a_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_b.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_b.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_b.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_b.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_b_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_b_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_b_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_b_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_b_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_b_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_b_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_b_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_filter_left.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_filter_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_filter_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_filter_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_filter_left_empty.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_filter_left_empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_filter_left_empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_filter_left_empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_filter_left_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_filter_left_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_filter_left_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_filter_left_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_filter_right.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_filter_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_filter_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_filter_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_filter_right_empty.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_filter_right_empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_filter_right_empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_filter_right_empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_filter_right_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_filter_right_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_filter_right_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_filter_right_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_fork_chevron_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_fork_chevron_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_fork_chevron_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_fork_chevron_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_fork_chevron_mid_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_fork_chevron_mid_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_fork_chevron_mid_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_fork_chevron_mid_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_fork_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_fork_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_fork_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_fork_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_fork_mid_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_fork_mid_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_fork_mid_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_fork_mid_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_mid_line_connection.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_mid_line_connection.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_mid_line_connection.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_mid_line_connection.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_mid_line_connection_12.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_mid_line_connection_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_mid_line_connection_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_mid_line_connection_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_mid_line_connection_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_mid_line_connection_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_mid_line_connection_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_mid_line_connection_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_mid_line_connection_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_mid_line_connection_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_mid_line_connection_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_mid_line_connection_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_12.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thick_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thick_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thick_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thick_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thick_thick_12.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thick_thick_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thick_thick_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thick_thick_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thick_thick_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thick_thick_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thick_thick_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thick_thick_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thick_thick_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thick_thick_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thick_thick_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thick_thick_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thin_12.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thin_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thin_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thin_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thin_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thin_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thin_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thin_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thin_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thin_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_junction_side_line_connection_thin_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_junction_side_line_connection_thin_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_keep.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_keep.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_keep.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_keep.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_lane.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_lane.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_lane.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_lane.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_left.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_merge_arrow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_merge_arrow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_merge_arrow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_merge_arrow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_no.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_no.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_no.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_no.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_only.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_only.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_only.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_only.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_pedestrian.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_pedestrian.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_pedestrian.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_pedestrian.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_right.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_slow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_slow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_slow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_slow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_stop.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_stop.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_stop.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_stop.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_taxi.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_taxi.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_taxi.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_taxi.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_town.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_town.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_town.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_town.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_turn.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_turn.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_turn.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_turn.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_wheelchair_icon.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_wheelchair_icon.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/red_wheelchair_icon.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/red_wheelchair_icon.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_arrow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_arrow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_arrow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_arrow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_arrow_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_arrow_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_arrow_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_arrow_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_arrow_diagonal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_arrow_diagonal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_arrow_diagonal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_arrow_diagonal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_arrow_diagonal_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_arrow_diagonal_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_arrow_diagonal_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_arrow_diagonal_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_arrow_line.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_arrow_line.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_arrow_line.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_arrow_line.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_bike.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_bike.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_bike.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_bike.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_bike_icon.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_bike_icon.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_bike_icon.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_bike_icon.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_bus.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_bus.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_bus.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_bus.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_left_a.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_left_a.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_left_a.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_left_a.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_left_a_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_left_a_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_left_a_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_left_a_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_mid_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_mid_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_mid_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_mid_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_mid_left.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_mid_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_mid_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_mid_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_mid_left_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_mid_left_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_mid_left_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_mid_left_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_mid_right.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_mid_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_mid_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_mid_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_mid_right_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_mid_right_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_mid_right_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_mid_right_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_right_a.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_right_a.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_right_a.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_right_a.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_right_a_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_right_a_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_right_a_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_right_a_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_side_line.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_side_line.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_chevron_side_line.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_chevron_side_line.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_city.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_city.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_city.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_city.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_clear.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_clear.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_clear.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_clear.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_crossing_paint.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_crossing_paint.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_crossing_paint.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_crossing_paint.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_ctre.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_ctre.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_ctre.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_ctre.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_entry.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_entry.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_entry.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_entry.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_give_way.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_give_way.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_give_way.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_give_way.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_a.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_a.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_a.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_a.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_a_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_a_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_a_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_a_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_a_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_a_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_a_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_a_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_b.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_b.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_b.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_b.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_b_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_b_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_b_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_b_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_b_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_b_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_b_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_b_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_filter_left.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_filter_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_filter_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_filter_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_filter_left_empty.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_filter_left_empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_filter_left_empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_filter_left_empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_filter_left_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_filter_left_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_filter_left_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_filter_left_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_filter_right.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_filter_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_filter_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_filter_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_filter_right_empty.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_filter_right_empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_filter_right_empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_filter_right_empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_filter_right_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_filter_right_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_filter_right_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_filter_right_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_fork_chevron_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_fork_chevron_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_fork_chevron_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_fork_chevron_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_fork_chevron_mid_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_fork_chevron_mid_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_fork_chevron_mid_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_fork_chevron_mid_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_fork_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_fork_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_fork_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_fork_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_fork_mid_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_fork_mid_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_fork_mid_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_fork_mid_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_mid_line_connection.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_mid_line_connection.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_mid_line_connection.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_mid_line_connection.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_mid_line_connection_12.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_mid_line_connection_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_mid_line_connection_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_mid_line_connection_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_mid_line_connection_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_mid_line_connection_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_mid_line_connection_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_mid_line_connection_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_mid_line_connection_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_mid_line_connection_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_mid_line_connection_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_mid_line_connection_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_12.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thick_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thick_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thick_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thick_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thick_thick_12.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thick_thick_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thick_thick_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thick_thick_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thick_thick_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thick_thick_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thick_thick_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thick_thick_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thick_thick_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thick_thick_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thick_thick_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thick_thick_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thin_12.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thin_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thin_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thin_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thin_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thin_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thin_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thin_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thin_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thin_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_junction_side_line_connection_thin_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_junction_side_line_connection_thin_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_keep.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_keep.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_keep.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_keep.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_lane.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_lane.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_lane.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_lane.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_left.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_merge_arrow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_merge_arrow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_merge_arrow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_merge_arrow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_no.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_no.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_no.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_no.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_only.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_only.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_only.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_only.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_pedestrian.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_pedestrian.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_pedestrian.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_pedestrian.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_right.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_slow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_slow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_slow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_slow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_stop.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_stop.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_stop.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_stop.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_taxi.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_taxi.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_taxi.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_taxi.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_town.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_town.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_town.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_town.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_turn.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_turn.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_turn.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_turn.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_wheelchair_icon.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_wheelchair_icon.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/white_wheelchair_icon.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/white_wheelchair_icon.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_arrow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_arrow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_arrow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_arrow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_arrow_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_arrow_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_arrow_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_arrow_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_arrow_diagonal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_arrow_diagonal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_arrow_diagonal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_arrow_diagonal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_arrow_diagonal_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_arrow_diagonal_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_arrow_diagonal_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_arrow_diagonal_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_arrow_line.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_arrow_line.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_arrow_line.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_arrow_line.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_bike.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_bike.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_bike.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_bike.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_bike_icon.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_bike_icon.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_bike_icon.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_bike_icon.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_bus.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_bus.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_bus.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_bus.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_left_a.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_left_a.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_left_a.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_left_a.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_left_a_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_left_a_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_left_a_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_left_a_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_mid_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_mid_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_mid_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_mid_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_mid_left.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_mid_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_mid_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_mid_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_mid_left_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_mid_left_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_mid_left_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_mid_left_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_mid_right.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_mid_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_mid_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_mid_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_mid_right_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_mid_right_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_mid_right_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_mid_right_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_right_a.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_right_a.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_right_a.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_right_a.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_right_a_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_right_a_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_right_a_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_right_a_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_side_line.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_side_line.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_chevron_side_line.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_chevron_side_line.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_city.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_city.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_city.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_city.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_clear.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_clear.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_clear.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_clear.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_crossing_paint.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_crossing_paint.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_crossing_paint.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_crossing_paint.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_ctre.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_ctre.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_ctre.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_ctre.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_entry.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_entry.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_entry.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_entry.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_give_way.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_give_way.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_give_way.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_give_way.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_a.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_a.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_a.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_a.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_a_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_a_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_a_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_a_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_a_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_a_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_a_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_a_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_b.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_b.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_b.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_b.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_b_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_b_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_b_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_b_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_b_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_b_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_b_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_b_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_filter_left.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_filter_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_filter_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_filter_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_filter_left_empty.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_filter_left_empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_filter_left_empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_filter_left_empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_filter_left_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_filter_left_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_filter_left_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_filter_left_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_filter_right.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_filter_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_filter_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_filter_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_filter_right_empty.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_filter_right_empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_filter_right_empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_filter_right_empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_filter_right_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_filter_right_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_filter_right_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_filter_right_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_fork_chevron_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_fork_chevron_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_fork_chevron_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_fork_chevron_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_fork_chevron_mid_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_fork_chevron_mid_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_fork_chevron_mid_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_fork_chevron_mid_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_fork_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_fork_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_fork_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_fork_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_fork_mid_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_fork_mid_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_fork_mid_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_fork_mid_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_mid_line_connection.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_mid_line_connection.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_mid_line_connection.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_mid_line_connection.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_mid_line_connection_12.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_mid_line_connection_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_mid_line_connection_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_mid_line_connection_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_mid_line_connection_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_mid_line_connection_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_mid_line_connection_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_mid_line_connection_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_mid_line_connection_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_mid_line_connection_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_mid_line_connection_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_mid_line_connection_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_12.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thick_thick.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thick_thick.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thick_thick.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thick_thick.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thick_thick_12.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thick_thick_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thick_thick_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thick_thick_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thick_thick_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thick_thick_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thick_thick_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thick_thick_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thick_thick_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thick_thick_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thick_thick_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thick_thick_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thin_12.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thin_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thin_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thin_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thin_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thin_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thin_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thin_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thin_8.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thin_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_junction_side_line_connection_thin_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_junction_side_line_connection_thin_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_keep.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_keep.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_keep.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_keep.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_lane.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_lane.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_lane.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_lane.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_left.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_merge_arrow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_merge_arrow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_merge_arrow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_merge_arrow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_no.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_no.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_no.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_no.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_only.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_only.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_only.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_only.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_pedestrian.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_pedestrian.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_pedestrian.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_pedestrian.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_right.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_slow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_slow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_slow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_slow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_stop.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_stop.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_stop.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_stop.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_taxi.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_taxi.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_taxi.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_taxi.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_town.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_town.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_town.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_town.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_turn.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_turn.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_turn.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_turn.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_wheelchair_icon.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_wheelchair_icon.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_gun_display/yellow_wheelchair_icon.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_gun_display/yellow_wheelchair_icon.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/line_red_crossing_diagonal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/line_red_crossing_diagonal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/line_red_crossing_diagonal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/line_red_crossing_diagonal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/line_white_crossing_diagonal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/line_white_crossing_diagonal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/line_white_crossing_diagonal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/line_white_crossing_diagonal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/line_yellow_crossing_diagonal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/line_yellow_crossing_diagonal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/line_yellow_crossing_diagonal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/line_yellow_crossing_diagonal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_arrow_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_arrow_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_arrow_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_arrow_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_arrow_diagonal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_arrow_diagonal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_arrow_diagonal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_arrow_diagonal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_arrow_diagonal_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_arrow_diagonal_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_arrow_diagonal_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_arrow_diagonal_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_crossing_paint.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_crossing_paint.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_crossing_paint.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_crossing_paint.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_give_way.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_give_way.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_give_way.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_give_way.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_filter_left.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_filter_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_filter_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_filter_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_filter_left_empty.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_filter_left_empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_filter_left_empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_filter_left_empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_filter_left_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_filter_left_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_filter_left_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_filter_left_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_filter_right.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_filter_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_filter_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_filter_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_filter_right_empty.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_filter_right_empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_filter_right_empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_filter_right_empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_filter_right_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_filter_right_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_filter_right_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_filter_right_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_fork_chevron_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_fork_chevron_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_fork_chevron_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_fork_chevron_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_fork_chevron_mid_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_fork_chevron_mid_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_fork_chevron_mid_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_fork_chevron_mid_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_fork_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_fork_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_fork_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_fork_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_fork_mid_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_fork_mid_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_junction_fork_mid_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_junction_fork_mid_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_merge_arrow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_merge_arrow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_merge_arrow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_merge_arrow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_pedestrian.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_pedestrian.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/red_pedestrian.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/red_pedestrian.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_arrow_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_arrow_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_arrow_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_arrow_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_arrow_diagonal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_arrow_diagonal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_arrow_diagonal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_arrow_diagonal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_arrow_diagonal_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_arrow_diagonal_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_arrow_diagonal_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_arrow_diagonal_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_crossing_paint.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_crossing_paint.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_crossing_paint.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_crossing_paint.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_give_way.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_give_way.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_give_way.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_give_way.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_filter_left.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_filter_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_filter_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_filter_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_filter_left_empty.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_filter_left_empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_filter_left_empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_filter_left_empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_filter_left_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_filter_left_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_filter_left_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_filter_left_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_filter_right.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_filter_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_filter_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_filter_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_filter_right_empty.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_filter_right_empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_filter_right_empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_filter_right_empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_filter_right_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_filter_right_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_filter_right_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_filter_right_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_fork_chevron_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_fork_chevron_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_fork_chevron_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_fork_chevron_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_fork_chevron_mid_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_fork_chevron_mid_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_fork_chevron_mid_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_fork_chevron_mid_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_fork_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_fork_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_fork_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_fork_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_fork_mid_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_fork_mid_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_junction_fork_mid_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_junction_fork_mid_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_merge_arrow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_merge_arrow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_merge_arrow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_merge_arrow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_pedestrian.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_pedestrian.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/white_pedestrian.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/white_pedestrian.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_arrow_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_arrow_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_arrow_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_arrow_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_arrow_diagonal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_arrow_diagonal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_arrow_diagonal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_arrow_diagonal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_arrow_diagonal_4.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_arrow_diagonal_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_arrow_diagonal_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_arrow_diagonal_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_crossing_paint.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_crossing_paint.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_crossing_paint.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_crossing_paint.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_give_way.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_give_way.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_give_way.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_give_way.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_filter_left.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_filter_left.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_filter_left.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_filter_left.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_filter_left_empty.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_filter_left_empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_filter_left_empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_filter_left_empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_filter_left_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_filter_left_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_filter_left_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_filter_left_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_filter_right.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_filter_right.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_filter_right.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_filter_right.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_filter_right_empty.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_filter_right_empty.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_filter_right_empty.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_filter_right_empty.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_filter_right_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_filter_right_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_filter_right_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_filter_right_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_fork_chevron_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_fork_chevron_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_fork_chevron_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_fork_chevron_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_fork_chevron_mid_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_fork_chevron_mid_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_fork_chevron_mid_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_fork_chevron_mid_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_fork_mid.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_fork_mid.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_fork_mid.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_fork_mid.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_fork_mid_thin.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_fork_mid_thin.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_junction_fork_mid_thin.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_junction_fork_mid_thin.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_merge_arrow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_merge_arrow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_merge_arrow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_merge_arrow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_pedestrian.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_pedestrian.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_icons/yellow_pedestrian.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_icons/yellow_pedestrian.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_red.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_red.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_red.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_red.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_scraper.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_scraper.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_scraper.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_scraper.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_white.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_white.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_white.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_white.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/paint_yellow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/paint_yellow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/paint_yellow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/paint_yellow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/pneumatic_drill.png b/src/main/resources/assets/furenikusroads/textures_archive/item/pneumatic_drill.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/pneumatic_drill.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/pneumatic_drill.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/sidewalk_fragment_clean.png b/src/main/resources/assets/furenikusroads/textures_archive/item/sidewalk_fragment_clean.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/sidewalk_fragment_clean.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/sidewalk_fragment_clean.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/sidewalk_fragment_dark.png b/src/main/resources/assets/furenikusroads/textures_archive/item/sidewalk_fragment_dark.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/sidewalk_fragment_dark.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/sidewalk_fragment_dark.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/sidewalk_fragment_standard.png b/src/main/resources/assets/furenikusroads/textures_archive/item/sidewalk_fragment_standard.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/sidewalk_fragment_standard.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/sidewalk_fragment_standard.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/sidewalk_fragment_tan.png b/src/main/resources/assets/furenikusroads/textures_archive/item/sidewalk_fragment_tan.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/sidewalk_fragment_tan.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/sidewalk_fragment_tan.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/street_light_bulb.png b/src/main/resources/assets/furenikusroads/textures_archive/item/street_light_bulb.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/street_light_bulb.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/street_light_bulb.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_blade.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_blade.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_blade.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_blade.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_blade_diamond.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_blade_diamond.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_blade_diamond.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_blade_diamond.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_blade_gold.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_blade_gold.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_blade_gold.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_blade_gold.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_blade_iron.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_blade_iron.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_blade_iron.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_blade_iron.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_machine.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_machine.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_machine.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_machine.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_metal.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_metal.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_metal.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_metal.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_tyre.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_tyre.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_cutter_tyre.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_cutter_tyre.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_blue.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_blue.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_blue.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_blue.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_concrete_1.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_concrete_1.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_concrete_1.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_concrete_1.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_concrete_2.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_concrete_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_concrete_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_concrete_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_dark.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_dark.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_dark.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_dark.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_dirt.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_dirt.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_dirt.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_dirt.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_fine.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_fine.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_fine.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_fine.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_grass.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_grass.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_grass.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_grass.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_gravel.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_gravel.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_gravel.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_gravel.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_green.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_green.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_green.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_green.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_light.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_light.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_light.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_light.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_muddy.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_muddy.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_muddy.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_muddy.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_pale.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_pale.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_pale.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_pale.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_red.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_red.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_red.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_red.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_sand.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_sand.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_sand.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_sand.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_standard.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_standard.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_standard.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_standard.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_stone.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_stone.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_stone.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_stone.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_white.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_white.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_white.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_white.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_yellow.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_yellow.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tarmac_fragment_yellow.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tarmac_fragment_yellow.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/tool_handle.png b/src/main/resources/assets/furenikusroads/textures_archive/item/tool_handle.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/tool_handle.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/tool_handle.png diff --git a/src/main/resources/assets/furenikusroads/textures/items/wrench.png b/src/main/resources/assets/furenikusroads/textures_archive/item/wrench.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/items/wrench.png rename to src/main/resources/assets/furenikusroads/textures_archive/item/wrench.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/arrow_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/arrow_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/arrow_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/arrow_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/arrow_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/arrow_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/arrow_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/arrow_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/arrow_diagonal_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/arrow_diagonal_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/arrow_diagonal_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/arrow_diagonal_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/arrow_diagonal_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/arrow_diagonal_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/arrow_diagonal_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/arrow_diagonal_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/arrow_line_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/arrow_line_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/arrow_line_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/arrow_line_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/bike_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/bike_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/bike_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/bike_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/bike_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/bike_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/bike_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/bike_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/bike_icon_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/bike_icon_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/bike_icon_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/bike_icon_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/bike_icon_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/bike_icon_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/bike_icon_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/bike_icon_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/bus_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/bus_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/bus_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/bus_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/bus_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/bus_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/bus_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/bus_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/chevron_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/chevron_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/chevron_left_a_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_left_a_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/chevron_left_a_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_left_a_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/chevron_left_a_thin_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_left_a_thin_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/chevron_left_a_thin_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_left_a_thin_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/chevron_mid_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_mid_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/chevron_mid_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_mid_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/chevron_mid_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_mid_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/chevron_mid_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_mid_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/chevron_mid_left_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_mid_left_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/chevron_mid_left_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_mid_left_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/chevron_mid_left_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_mid_left_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/chevron_mid_left_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_mid_left_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/chevron_mid_right_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_mid_right_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/chevron_mid_right_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_mid_right_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/chevron_mid_right_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_mid_right_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/chevron_mid_right_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_mid_right_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/chevron_right_a_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_right_a_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/chevron_right_a_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_right_a_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/chevron_right_a_thin_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_right_a_thin_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/chevron_right_a_thin_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_right_a_thin_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/chevron_side_line_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_side_line_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/chevron_side_line_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/chevron_side_line_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/city_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/city_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/city_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/city_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/city_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/city_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/city_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/city_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/clear_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/clear_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/clear_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/clear_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/clear_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/clear_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/clear_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/clear_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/crossing_paint_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/crossing_paint_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/crossing_paint_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/crossing_paint_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/ctre_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/ctre_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/ctre_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/ctre_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/ctre_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/ctre_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/ctre_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/ctre_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/entry_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/entry_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/entry_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/entry_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/entry_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/entry_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/entry_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/entry_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/give_way_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/give_way_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/give_way_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/give_way_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/hatch_box_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/hatch_box_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/hatch_box_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/hatch_box_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_a_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_a_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_a_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_a_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_a_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_a_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_a_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_a_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_a_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_a_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_a_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_a_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_b_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_b_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_b_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_b_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_b_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_b_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_b_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_b_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_b_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_b_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_b_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_b_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_filter_left_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_filter_left_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_filter_left_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_filter_left_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_filter_left_empty_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_filter_left_empty_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_filter_left_empty_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_filter_left_empty_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_filter_left_thin_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_filter_left_thin_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_filter_left_thin_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_filter_left_thin_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_filter_right_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_filter_right_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_filter_right_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_filter_right_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_filter_right_empty_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_filter_right_empty_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_filter_right_empty_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_filter_right_empty_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_filter_right_thin_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_filter_right_thin_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_filter_right_thin_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_filter_right_thin_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_fork_chevron_mid_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_fork_chevron_mid_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_fork_chevron_mid_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_fork_chevron_mid_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_fork_chevron_mid_thin_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_fork_chevron_mid_thin_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_fork_chevron_mid_thin_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_fork_chevron_mid_thin_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_fork_mid_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_fork_mid_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_fork_mid_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_fork_mid_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_fork_mid_thin_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_fork_mid_thin_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_fork_mid_thin_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_fork_mid_thin_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_mid_line_connection_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_mid_line_connection_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_mid_line_connection_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_mid_line_connection_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_mid_line_connection_12.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_mid_line_connection_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_mid_line_connection_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_mid_line_connection_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_mid_line_connection_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_mid_line_connection_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_mid_line_connection_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_mid_line_connection_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_mid_line_connection_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_mid_line_connection_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_mid_line_connection_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_mid_line_connection_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_12.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thick_thick_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thick_thick_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thick_thick_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thick_thick_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thick_thick_12.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thick_thick_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thick_thick_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thick_thick_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thick_thick_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thick_thick_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thick_thick_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thick_thick_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thick_thick_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thick_thick_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thick_thick_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thick_thick_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thin_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thin_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thin_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thin_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thin_12.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thin_12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thin_12.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thin_12.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thin_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thin_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thin_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thin_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thin_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thin_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/junction_side_line_connection_thin_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/junction_side_line_connection_thin_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/keep_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/keep_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/keep_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/keep_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/keep_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/keep_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/keep_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/keep_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/lane_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/lane_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/lane_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/lane_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/lane_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/lane_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/lane_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/lane_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/left_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/left_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/left_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/left_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/left_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/left_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/left_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/left_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_crossing_diagonal_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_crossing_diagonal_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_crossing_diagonal_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_crossing_diagonal_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_far_side_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_far_side_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_far_side_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_far_side_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_far_side_6.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_far_side_6.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_far_side_6.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_far_side_6.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_far_side_thick_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_far_side_thick_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_far_side_thick_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_far_side_thick_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_far_side_thick_6.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_far_side_thick_6.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_far_side_thick_6.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_far_side_thick_6.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_filter_lane_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_filter_lane_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_filter_lane_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_filter_lane_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_middle_dash_double_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_middle_dash_double_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_middle_dash_double_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_middle_dash_double_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_middle_half_double.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_middle_half_double.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_middle_half_double.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_middle_half_double.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_middle_half_double_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_middle_half_double_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_middle_half_double_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_middle_half_double_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_middle_short_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_middle_short_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_middle_short_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_middle_short_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_side_double_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_double_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_side_double_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_double_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_side_double_6.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_double_6.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_side_double_6.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_double_6.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_side_double_thick_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_double_thick_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_side_double_thick_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_double_thick_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_side_double_thick_6.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_double_thick_6.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_side_double_thick_6.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_double_thick_6.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_side_short_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_short_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_side_short_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_short_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_side_single_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_single_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_side_single_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_single_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_side_single_6.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_single_6.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_side_single_6.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_single_6.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_side_single_thick_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_single_thick_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_side_single_thick_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_single_thick_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_side_single_thick_6.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_single_thick_6.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_side_single_thick_6.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_side_single_thick_6.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_straight_double_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_double_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_straight_double_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_double_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_straight_double_2.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_double_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_straight_double_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_double_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_straight_double_thick_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_double_thick_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_straight_double_thick_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_double_thick_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_straight_double_thick_2.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_double_thick_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_straight_double_thick_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_double_thick_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_straight_full_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_full_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_straight_full_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_full_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_straight_full_2.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_full_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_straight_full_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_full_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_straight_thick_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_thick_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_straight_thick_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_thick_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_straight_thick_2.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_thick_2.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_straight_thick_2.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_straight_thick_2.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/line_thin_crossing_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/line_thin_crossing_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/line_thin_crossing_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/line_thin_crossing_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/merge_arrow_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/merge_arrow_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/merge_arrow_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/merge_arrow_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/no_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/no_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/no_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/no_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/no_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/no_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/no_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/no_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/only_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/only_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/only_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/only_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/only_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/only_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/only_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/only_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_01_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_01_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_01_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_01_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_01_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_01_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_01_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_01_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_23_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_23_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_23_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_23_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_23_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_23_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_23_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_23_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_45_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_45_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_45_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_45_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_45_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_45_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_45_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_45_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_67_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_67_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_67_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_67_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_67_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_67_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_67_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_67_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_89_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_89_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_89_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_89_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_89_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_89_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_89_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_89_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_ab_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_ab_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_ab_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_ab_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_ab_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_ab_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_ab_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_ab_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_cd_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_cd_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_cd_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_cd_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_cd_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_cd_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_cd_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_cd_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_ef_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_ef_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_ef_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_ef_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_ef_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_ef_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_ef_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_ef_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_gh_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_gh_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_gh_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_gh_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_gh_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_gh_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_gh_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_gh_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_ij_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_ij_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_ij_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_ij_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_ij_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_ij_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_ij_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_ij_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_kl_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_kl_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_kl_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_kl_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_kl_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_kl_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_kl_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_kl_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_mn_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_mn_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_mn_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_mn_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_mn_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_mn_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_mn_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_mn_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_op_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_op_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_op_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_op_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_op_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_op_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_op_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_op_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_punct_hash_slash_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_punct_hash_slash_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_punct_hash_slash_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_punct_hash_slash_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_punct_hash_slash_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_punct_hash_slash_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_punct_hash_slash_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_punct_hash_slash_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_punct_question_exclamation_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_punct_question_exclamation_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_punct_question_exclamation_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_punct_question_exclamation_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_punct_question_exclamation_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_punct_question_exclamation_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_punct_question_exclamation_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_punct_question_exclamation_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_qr_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_qr_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_qr_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_qr_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_qr_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_qr_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_qr_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_qr_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_st_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_st_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_st_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_st_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_st_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_st_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_st_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_st_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_uv_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_uv_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_uv_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_uv_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_uv_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_uv_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_uv_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_uv_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_wx_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_wx_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_wx_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_wx_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_wx_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_wx_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_wx_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_wx_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_yz_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_yz_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_yz_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_yz_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/paint_letter_yz_8.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_yz_8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/paint_letter_yz_8.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/paint_letter_yz_8.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/pedestrian_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/pedestrian_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/pedestrian_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/pedestrian_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/right_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/right_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/right_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/right_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/right_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/right_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/right_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/right_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/slow_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/slow_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/slow_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/slow_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/slow_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/slow_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/slow_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/slow_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/stop_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/stop_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/stop_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/stop_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/stop_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/stop_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/stop_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/stop_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/taxi_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/taxi_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/taxi_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/taxi_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/taxi_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/taxi_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/taxi_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/taxi_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/town_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/town_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/town_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/town_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/town_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/town_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/town_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/town_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/turn_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/turn_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/turn_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/turn_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/turn_4.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/turn_4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/turn_4.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/turn_4.png diff --git a/src/main/resources/assets/furenikusroads/textures/paints/wheelchair_icon_0.png b/src/main/resources/assets/furenikusroads/textures_archive/paints/wheelchair_icon_0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/paints/wheelchair_icon_0.png rename to src/main/resources/assets/furenikusroads/textures_archive/paints/wheelchair_icon_0.png diff --git a/src/main/resources/assets/furenikusroads/textures/roadBlockDirt0.png b/src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirt0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/roadBlockDirt0.png rename to src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirt0.png diff --git a/src/main/resources/assets/furenikusroads/textures/roadBlockDirt12.png b/src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirt12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/roadBlockDirt12.png rename to src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirt12.png diff --git a/src/main/resources/assets/furenikusroads/textures/roadBlockDirt4.png b/src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirt4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/roadBlockDirt4.png rename to src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirt4.png diff --git a/src/main/resources/assets/furenikusroads/textures/roadBlockDirt8.png b/src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirt8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/roadBlockDirt8.png rename to src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirt8.png diff --git a/src/main/resources/assets/furenikusroads/textures/roadBlockDirtCorner0.png b/src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirtCorner0.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/roadBlockDirtCorner0.png rename to src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirtCorner0.png diff --git a/src/main/resources/assets/furenikusroads/textures/roadBlockDirtCorner12.png b/src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirtCorner12.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/roadBlockDirtCorner12.png rename to src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirtCorner12.png diff --git a/src/main/resources/assets/furenikusroads/textures/roadBlockDirtCorner4.png b/src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirtCorner4.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/roadBlockDirtCorner4.png rename to src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirtCorner4.png diff --git a/src/main/resources/assets/furenikusroads/textures/roadBlockDirtCorner8.png b/src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirtCorner8.png similarity index 100% rename from src/main/resources/assets/furenikusroads/textures/roadBlockDirtCorner8.png rename to src/main/resources/assets/furenikusroads/textures_archive/roadBlockDirtCorner8.png diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info deleted file mode 100644 index 2f7dc185..00000000 --- a/src/main/resources/mcmod.info +++ /dev/null @@ -1,16 +0,0 @@ -[ -{ - "modid": "furenikusroads", - "name": "Fureniku's Roads", - "description": "Simple roads for your Minecraft world!", - "version": "${version}", - "mcversion": "${mcversion}", - "url": "http://fureniku.com/minecraft-mods/furenikus-roads/", - "updateUrl": "", - "authorList": ["Fureniku"], - "credits": "LauraDarkez, for some very useful models, SmallxiaoxiaoB for Chinese translations, Ryk7039 for Italian translations", - "logoFile": "/assets/furenikusroads/logo.png", - "screenshots": [], - "dependencies": [] -} -] diff --git a/src/main/resources/pack.mcmeta b/src/main/resources/pack.mcmeta index 806e30f0..59c52402 100644 --- a/src/main/resources/pack.mcmeta +++ b/src/main/resources/pack.mcmeta @@ -1,6 +1,8 @@ { - "pack": { - "description": "fureniku's roads resources", - "pack_format": 3 - } + "pack": { + "description": { + "text": "${mod_id} resources" + }, + "pack_format": ${pack_format_number} + } }