Compare commits
73 Commits
v3.7-beta-
...
v3.0
Author | SHA1 | Date | |
---|---|---|---|
|
30d6845bb2 | ||
|
a4483ef659 | ||
|
574a3ae510 | ||
|
6c2398f9f3 | ||
|
8536fbb214 | ||
|
fea8b11741 | ||
|
36dc1adb15 | ||
|
52ba0b467b | ||
|
f6deca07b4 | ||
|
602e2d76d9 | ||
|
20f3fe9684 | ||
|
540da73c80 | ||
|
5256a16ca0 | ||
|
d188618720 | ||
|
092aa52293 | ||
|
a4a07d96da | ||
|
425ca0fdb6 | ||
|
435472085d | ||
|
d78a4fd11b | ||
|
d00ff62426 | ||
|
313933fa5c | ||
|
a0effe21f6 | ||
|
3365883b60 | ||
|
60aac56d40 | ||
|
788addccde | ||
|
4d7d66f199 | ||
|
f38e638d22 | ||
|
d90fd79c47 | ||
|
eff2f7c512 | ||
|
f672be63cb | ||
|
8277caa397 | ||
|
b434f09035 | ||
|
e21198d279 | ||
|
1d6346b580 | ||
|
e086930133 | ||
|
27526e64e5 | ||
|
21369ec485 | ||
|
120889b500 | ||
|
669c75322a | ||
|
29f4aaf419 | ||
|
13f0f7241a | ||
|
8cfc8f35b9 | ||
|
41da0aaf63 | ||
|
d80fb25213 | ||
|
ea24554033 | ||
|
b9144e3609 | ||
|
9878719337 | ||
|
6746631758 | ||
|
23cd60ba0a | ||
|
328954b256 | ||
|
574a400ada | ||
|
84ee4cdf0c | ||
|
dea6a55acd | ||
|
87993219bb | ||
|
7cdd90768e | ||
|
b0e56d3e5a | ||
|
20700c21b8 | ||
|
85885ced0e | ||
|
06fbcb8d3d | ||
|
b181607e5a | ||
|
bb1438b3c4 | ||
|
1ba6dd4683 | ||
|
d16fdc8275 | ||
|
914fc5a10c | ||
|
a669d75de0 | ||
|
bc0117ac5a | ||
|
298b31cdc8 | ||
|
5244e74d47 | ||
|
0d15ee5a46 | ||
|
ca80758605 | ||
|
0ba3c8008f | ||
|
030a0e1d24 | ||
|
c093a95bc0 |
1
.github/workflows/gibberish.txt
vendored
@ -59,3 +59,4 @@ ForgeGradle
|
|||||||
Kosma
|
Kosma
|
||||||
Kosma's
|
Kosma's
|
||||||
DEV
|
DEV
|
||||||
|
Modrinth
|
||||||
|
@ -19,11 +19,13 @@ dependencies {
|
|||||||
implementation 'org.yaml:snakeyaml:1.23' // DON'T UPDATE - NEWER ONE TRIPS ON WINDOWS ENCODED FILES
|
implementation 'org.yaml:snakeyaml:1.23' // DON'T UPDATE - NEWER ONE TRIPS ON WINDOWS ENCODED FILES
|
||||||
implementation 'com.googlecode.owasp-java-html-sanitizer:owasp-java-html-sanitizer:20180219.1'
|
implementation 'com.googlecode.owasp-java-html-sanitizer:owasp-java-html-sanitizer:20180219.1'
|
||||||
implementation 'org.postgresql:postgresql:42.2.18'
|
implementation 'org.postgresql:postgresql:42.2.18'
|
||||||
implementation 'io.github.linktosriram:s3-lite-core:0.2.0'
|
implementation 'io.github.linktosriram.s3lite:core:0.0.2-SNAPSHOT'
|
||||||
implementation 'io.github.linktosriram:s3-lite-api:0.2.0'
|
implementation 'io.github.linktosriram.s3lite:api:0.0.2-SNAPSHOT'
|
||||||
implementation 'io.github.linktosriram:s3-lite-http-client-url-connection:0.2.0'
|
implementation 'io.github.linktosriram.s3lite:http-client-url-connection:0.0.2-SNAPSHOT'
|
||||||
implementation 'io.github.linktosriram:s3-lite-http-client-spi:0.2.0'
|
implementation 'io.github.linktosriram.s3lite:http-client-spi:0.0.2-SNAPSHOT'
|
||||||
implementation 'io.github.linktosriram:s3-lite-util:0.2.0'
|
implementation 'io.github.linktosriram.s3lite:util:0.0.2-SNAPSHOT'
|
||||||
|
implementation 'jakarta.xml.bind:jakarta.xml.bind-api:3.0.1'
|
||||||
|
implementation 'com.sun.xml.bind:jaxb-impl:3.0.0'
|
||||||
}
|
}
|
||||||
|
|
||||||
processResources {
|
processResources {
|
||||||
@ -46,7 +48,7 @@ processResources {
|
|||||||
}
|
}
|
||||||
|
|
||||||
jar {
|
jar {
|
||||||
classifier = 'unshaded'
|
archiveClassifier = 'unshaded'
|
||||||
}
|
}
|
||||||
|
|
||||||
shadowJar {
|
shadowJar {
|
||||||
@ -58,11 +60,13 @@ shadowJar {
|
|||||||
include(dependency('org.eclipse.jetty::'))
|
include(dependency('org.eclipse.jetty::'))
|
||||||
include(dependency('org.eclipse.jetty.orbit:javax.servlet:'))
|
include(dependency('org.eclipse.jetty.orbit:javax.servlet:'))
|
||||||
include(dependency('org.postgresql:postgresql:'))
|
include(dependency('org.postgresql:postgresql:'))
|
||||||
include(dependency('io.github.linktosriram:s3-lite-core:'))
|
include(dependency('io.github.linktosriram.s3lite:core:'))
|
||||||
include(dependency('io.github.linktosriram:s3-lite-api:'))
|
include(dependency('io.github.linktosriram.s3lite:api:'))
|
||||||
include(dependency('io.github.linktosriram:s3-lite-http-client-url-connection:'))
|
include(dependency('io.github.linktosriram.s3lite:http-client-url-connection:'))
|
||||||
include(dependency('io.github.linktosriram:s3-lite-http-client-spi:'))
|
include(dependency('io.github.linktosriram.s3lite:http-client-spi:'))
|
||||||
include(dependency('io.github.linktosriram:s3-lite-util:'))
|
include(dependency('io.github.linktosriram.s3lite:util:'))
|
||||||
|
include(dependency('jakarta.xml.bind::'))
|
||||||
|
include(dependency('com.sun.xml.bind::'))
|
||||||
include(dependency(':DynmapCoreAPI'))
|
include(dependency(':DynmapCoreAPI'))
|
||||||
exclude("META-INF/maven/**")
|
exclude("META-INF/maven/**")
|
||||||
exclude("META-INF/services/**")
|
exclude("META-INF/services/**")
|
||||||
@ -75,8 +79,8 @@ shadowJar {
|
|||||||
relocate('org.postgresql', 'org.dynmap.org.postgresql')
|
relocate('org.postgresql', 'org.dynmap.org.postgresql')
|
||||||
relocate('io.github.linktosriram.s3lite', 'org.dynmap.s3lite')
|
relocate('io.github.linktosriram.s3lite', 'org.dynmap.s3lite')
|
||||||
|
|
||||||
destinationDir = file '../target'
|
destinationDirectory = file '../target'
|
||||||
classifier = ''
|
archiveClassifier = ''
|
||||||
}
|
}
|
||||||
|
|
||||||
artifacts {
|
artifacts {
|
||||||
|
@ -12,6 +12,7 @@ public class ClientUpdateComponent extends Component {
|
|||||||
private int hideifshadow;
|
private int hideifshadow;
|
||||||
private int hideifunder;
|
private int hideifunder;
|
||||||
private boolean hideifsneaking;
|
private boolean hideifsneaking;
|
||||||
|
private boolean hideifspectator;
|
||||||
private boolean hideifinvisiblepotion;
|
private boolean hideifinvisiblepotion;
|
||||||
private boolean is_protected;
|
private boolean is_protected;
|
||||||
public static boolean usePlayerColors;
|
public static boolean usePlayerColors;
|
||||||
@ -24,6 +25,7 @@ public class ClientUpdateComponent extends Component {
|
|||||||
hideifshadow = configuration.getInteger("hideifshadow", 15);
|
hideifshadow = configuration.getInteger("hideifshadow", 15);
|
||||||
hideifunder = configuration.getInteger("hideifundercover", 15);
|
hideifunder = configuration.getInteger("hideifundercover", 15);
|
||||||
hideifsneaking = configuration.getBoolean("hideifsneaking", false);
|
hideifsneaking = configuration.getBoolean("hideifsneaking", false);
|
||||||
|
hideifspectator = configuration.getBoolean("hideifspectator", false);
|
||||||
hideifinvisiblepotion = configuration.getBoolean("hide-if-invisiblity-potion", true);
|
hideifinvisiblepotion = configuration.getBoolean("hide-if-invisiblity-potion", true);
|
||||||
is_protected = configuration.getBoolean("protected-player-info", false);
|
is_protected = configuration.getBoolean("protected-player-info", false);
|
||||||
usePlayerColors = configuration.getBoolean("use-name-colors", false);
|
usePlayerColors = configuration.getBoolean("use-name-colors", false);
|
||||||
@ -100,6 +102,9 @@ public class ClientUpdateComponent extends Component {
|
|||||||
if((!hide) && hideifsneaking && p.isSneaking()) {
|
if((!hide) && hideifsneaking && p.isSneaking()) {
|
||||||
hide = true;
|
hide = true;
|
||||||
}
|
}
|
||||||
|
if((!hide) && hideifspectator && p.isSpectator()) {
|
||||||
|
hide = true;
|
||||||
|
}
|
||||||
if((!hide) && is_protected && (!see_all)) {
|
if((!hide) && is_protected && (!see_all)) {
|
||||||
if(e.user != null) {
|
if(e.user != null) {
|
||||||
hide = !core.testIfPlayerVisibleToPlayer(e.user, p.getName());
|
hide = !core.testIfPlayerVisibleToPlayer(e.user, p.getName());
|
||||||
|
@ -31,6 +31,7 @@ public class MarkersComponent extends ClientComponent {
|
|||||||
private MarkerSet spawnbedset;
|
private MarkerSet spawnbedset;
|
||||||
private MarkerIcon spawnbedicon;
|
private MarkerIcon spawnbedicon;
|
||||||
private String spawnbedformat;
|
private String spawnbedformat;
|
||||||
|
private boolean removebedonplayerleave;
|
||||||
private long maxofflineage;
|
private long maxofflineage;
|
||||||
private boolean showSpawn;
|
private boolean showSpawn;
|
||||||
private boolean showBorder;
|
private boolean showBorder;
|
||||||
@ -180,7 +181,7 @@ public class MarkersComponent extends ClientComponent {
|
|||||||
|
|
||||||
spawnbedicon = api.getMarkerIcon(configuration.getString("spawnbedicon", "bed"));
|
spawnbedicon = api.getMarkerIcon(configuration.getString("spawnbedicon", "bed"));
|
||||||
spawnbedformat = configuration.getString("spawnbedformat", "%name%'s bed");
|
spawnbedformat = configuration.getString("spawnbedformat", "%name%'s bed");
|
||||||
|
removebedonplayerleave = configuration.getBoolean("spawnbedremoveonplayerleave", true);
|
||||||
/* Add listener for players coming and going */
|
/* Add listener for players coming and going */
|
||||||
core.listenerManager.addListener(EventType.PLAYER_JOIN, new PlayerEventListener() {
|
core.listenerManager.addListener(EventType.PLAYER_JOIN, new PlayerEventListener() {
|
||||||
@Override
|
@Override
|
||||||
@ -188,15 +189,17 @@ public class MarkersComponent extends ClientComponent {
|
|||||||
updatePlayer(p);
|
updatePlayer(p);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
core.listenerManager.addListener(EventType.PLAYER_QUIT, new PlayerEventListener() {
|
if (removebedonplayerleave) {
|
||||||
@Override
|
core.listenerManager.addListener(EventType.PLAYER_QUIT, new PlayerEventListener() {
|
||||||
public void playerEvent(DynmapPlayer p) {
|
@Override
|
||||||
Marker m = spawnbedset.findMarker(p.getName()+"_bed");
|
public void playerEvent(DynmapPlayer p) {
|
||||||
if(m != null) {
|
Marker m = spawnbedset.findMarker(p.getName() + "_bed");
|
||||||
m.deleteMarker();
|
if (m != null) {
|
||||||
|
m.deleteMarker();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
});
|
||||||
});
|
}
|
||||||
core.listenerManager.addListener(EventType.PLAYER_BED_LEAVE, new PlayerEventListener() {
|
core.listenerManager.addListener(EventType.PLAYER_BED_LEAVE, new PlayerEventListener() {
|
||||||
@Override
|
@Override
|
||||||
public void playerEvent(final DynmapPlayer p) {
|
public void playerEvent(final DynmapPlayer p) {
|
||||||
|
@ -44,6 +44,12 @@ public interface DynmapPlayer extends DynmapCommandSender {
|
|||||||
* @return true if sneaking
|
* @return true if sneaking
|
||||||
*/
|
*/
|
||||||
public boolean isSneaking();
|
public boolean isSneaking();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* get spectator gamemode
|
||||||
|
* @return true if gamemode spectator
|
||||||
|
*/
|
||||||
|
public boolean isSpectator();
|
||||||
/**
|
/**
|
||||||
* Get health
|
* Get health
|
||||||
* @return health points
|
* @return health points
|
||||||
|
@ -34,7 +34,7 @@ public class ChunkVersionHDShader implements HDShader {
|
|||||||
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
// Mapping from https://minecraft.fandom.com/wiki/Data_version
|
// Mapping from https://minecraft.wiki/w/Data_version
|
||||||
final static DataVersionMap[] versionmap = {
|
final static DataVersionMap[] versionmap = {
|
||||||
new DataVersionMap(0, "unknown", 0x202020),
|
new DataVersionMap(0, "unknown", 0x202020),
|
||||||
new DataVersionMap(1519, "1.13.0", 0xF9E79F),
|
new DataVersionMap(1519, "1.13.0", 0xF9E79F),
|
||||||
@ -64,6 +64,13 @@ public class ChunkVersionHDShader implements HDShader {
|
|||||||
new DataVersionMap(3120, "1.19.2", 0xe7aeb8),
|
new DataVersionMap(3120, "1.19.2", 0xe7aeb8),
|
||||||
new DataVersionMap(3218, "1.19.3", 0xf8c0c8),
|
new DataVersionMap(3218, "1.19.3", 0xf8c0c8),
|
||||||
new DataVersionMap(3337, "1.19.4", 0xffb6c1),
|
new DataVersionMap(3337, "1.19.4", 0xffb6c1),
|
||||||
|
new DataVersionMap(3465, "1.20.1", 0xe7aeb10),
|
||||||
|
new DataVersionMap(3578, "1.20.2", 0xe196a7),
|
||||||
|
new DataVersionMap(3698, "1.20.3", 0xe7aeb11),
|
||||||
|
new DataVersionMap(3700, "1.20.4", 0xe196a8),
|
||||||
|
new DataVersionMap(3837, "1.20.5", 0xe7aeb12),
|
||||||
|
new DataVersionMap(3839, "1.20.6", 0xe196a9),
|
||||||
|
new DataVersionMap(3953, "1.21.0", 0xe7aeb13),
|
||||||
|
|
||||||
};
|
};
|
||||||
final static Color unknown_color = new Color(255, 255, 255);
|
final static Color unknown_color = new Color(255, 255, 255);
|
||||||
|
@ -48,9 +48,9 @@ public class HDBlockModels {
|
|||||||
private static HashSet<String> loadedmods = new HashSet<String>();
|
private static HashSet<String> loadedmods = new HashSet<String>();
|
||||||
private static HashMap<Integer, HDScaledBlockModels> scaled_models_by_scale = new HashMap<Integer, HDScaledBlockModels>();
|
private static HashMap<Integer, HDScaledBlockModels> scaled_models_by_scale = new HashMap<Integer, HDScaledBlockModels>();
|
||||||
|
|
||||||
public static final int getMaxPatchCount() { return max_patches; }
|
public static final int getMaxPatchCount() { return max_patches; }
|
||||||
public static final PatchDefinitionFactory getPatchDefinitionFactory() { return pdf; }
|
public static final PatchDefinitionFactory getPatchDefinitionFactory() { return pdf; }
|
||||||
|
|
||||||
/* Reset model if defined by different block set */
|
/* Reset model if defined by different block set */
|
||||||
public static boolean resetIfNotBlockSet(DynmapBlockState blk, String blockset) {
|
public static boolean resetIfNotBlockSet(DynmapBlockState blk, String blockset) {
|
||||||
HDBlockModel bm = models_by_id_data.get(blk.globalStateIndex);
|
HDBlockModel bm = models_by_id_data.get(blk.globalStateIndex);
|
||||||
@ -69,11 +69,11 @@ public class HDBlockModels {
|
|||||||
}
|
}
|
||||||
return 6;
|
return 6;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static final boolean isChangeIgnoredBlock(DynmapBlockState blk) {
|
public static final boolean isChangeIgnoredBlock(DynmapBlockState blk) {
|
||||||
return changeIgnoredBlocks.get(blk.globalStateIndex);
|
return changeIgnoredBlocks.get(blk.globalStateIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Process any block aliases */
|
/* Process any block aliases */
|
||||||
public static void handleBlockAlias() {
|
public static void handleBlockAlias() {
|
||||||
@ -85,7 +85,7 @@ public class HDBlockModels {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void remapModel(String bn, String newbn) {
|
private static void remapModel(String bn, String newbn) {
|
||||||
DynmapBlockState frombs = DynmapBlockState.getBaseStateByName(bn);
|
DynmapBlockState frombs = DynmapBlockState.getBaseStateByName(bn);
|
||||||
DynmapBlockState tobs = DynmapBlockState.getBaseStateByName(bn);
|
DynmapBlockState tobs = DynmapBlockState.getBaseStateByName(bn);
|
||||||
@ -103,8 +103,8 @@ public class HDBlockModels {
|
|||||||
customModelsRequestingTileData.set(tb.globalStateIndex, customModelsRequestingTileData.get(fs.globalStateIndex));
|
customModelsRequestingTileData.set(tb.globalStateIndex, customModelsRequestingTileData.get(fs.globalStateIndex));
|
||||||
changeIgnoredBlocks.set(tb.globalStateIndex, changeIgnoredBlocks.get(fs.globalStateIndex));
|
changeIgnoredBlocks.set(tb.globalStateIndex, changeIgnoredBlocks.get(fs.globalStateIndex));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get list of tile entity fields needed for custom renderer at given ID and data value, if any
|
* Get list of tile entity fields needed for custom renderer at given ID and data value, if any
|
||||||
* @param blk - block state
|
* @param blk - block state
|
||||||
@ -133,7 +133,7 @@ public class HDBlockModels {
|
|||||||
}
|
}
|
||||||
return model;
|
return model;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void addFiles(ArrayList<String> files, File dir, String path) {
|
private static void addFiles(ArrayList<String> files, File dir, String path) {
|
||||||
File[] listfiles = dir.listFiles();
|
File[] listfiles = dir.listFiles();
|
||||||
if(listfiles == null) return;
|
if(listfiles == null) return;
|
||||||
@ -173,7 +173,7 @@ public class HDBlockModels {
|
|||||||
changeIgnoredBlocks.clear();
|
changeIgnoredBlocks.clear();
|
||||||
/* Reset model list */
|
/* Reset model list */
|
||||||
loadedmods.clear();
|
loadedmods.clear();
|
||||||
|
|
||||||
/* Load block models */
|
/* Load block models */
|
||||||
int i = 0;
|
int i = 0;
|
||||||
boolean done = false;
|
boolean done = false;
|
||||||
@ -232,7 +232,7 @@ public class HDBlockModels {
|
|||||||
} catch (IOException iox) {
|
} catch (IOException iox) {
|
||||||
Log.severe("Error loading " + custom.getPath());
|
Log.severe("Error loading " + custom.getPath());
|
||||||
} finally {
|
} finally {
|
||||||
if(in != null) {
|
if(in != null) {
|
||||||
try { in.close(); } catch (IOException iox) {}
|
try { in.close(); } catch (IOException iox) {}
|
||||||
in = null;
|
in = null;
|
||||||
}
|
}
|
||||||
@ -268,7 +268,7 @@ public class HDBlockModels {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static Integer getIntValue(Map<String,Integer> vars, String val) throws NumberFormatException {
|
private static Integer getIntValue(Map<String,Integer> vars, String val) throws NumberFormatException {
|
||||||
char c = val.charAt(0);
|
char c = val.charAt(0);
|
||||||
if(Character.isLetter(c) || (c == '%') || (c == '&')) {
|
if(Character.isLetter(c) || (c == '%') || (c == '&')) {
|
||||||
@ -305,37 +305,37 @@ public class HDBlockModels {
|
|||||||
int yrot = 0;
|
int yrot = 0;
|
||||||
int[] patches = new int[6]; // Default all to patch0
|
int[] patches = new int[6]; // Default all to patch0
|
||||||
}
|
}
|
||||||
|
|
||||||
private static class ModelBoxSide {
|
private static class ModelBoxSide {
|
||||||
BlockSide side;
|
BlockSide side;
|
||||||
int textureid;
|
int textureid;
|
||||||
double[] uv;
|
double[] uv;
|
||||||
ModelBlockModel.SideRotation rot;
|
ModelBlockModel.SideRotation rot;
|
||||||
};
|
};
|
||||||
|
|
||||||
private static class ModelBox {
|
private static class ModelBox {
|
||||||
double[] from = new double[3];
|
double[] from = new double[3];
|
||||||
double[] to = new double[3];
|
double[] to = new double[3];
|
||||||
double xrot = 0, yrot = 0, zrot = 0;
|
double xrot = 0, yrot = 0, zrot = 0;
|
||||||
double xrotorig = 8, yrotorig = 8, zrotorig = 8;
|
double xrotorig = 8, yrotorig = 8, zrotorig = 8;
|
||||||
int modrotx = 0, modroty = 0, modrotz = 0; // Model level rotation
|
int modrotx = 0, modroty = 0, modrotz = 0; // Model level rotation
|
||||||
boolean shade = true;
|
boolean shade = true;
|
||||||
ArrayList<ModelBoxSide> sides = new ArrayList<ModelBoxSide>();
|
ArrayList<ModelBoxSide> sides = new ArrayList<ModelBoxSide>();
|
||||||
};
|
};
|
||||||
|
|
||||||
private static HashMap<String, BlockSide> toBlockSide = new HashMap<String, BlockSide>();
|
private static HashMap<String, BlockSide> toBlockSide = new HashMap<String, BlockSide>();
|
||||||
static {
|
static {
|
||||||
toBlockSide.put("u", BlockSide.TOP);
|
toBlockSide.put("u", BlockSide.TOP);
|
||||||
toBlockSide.put("d", BlockSide.BOTTOM);
|
toBlockSide.put("d", BlockSide.BOTTOM);
|
||||||
toBlockSide.put("n", BlockSide.NORTH);
|
toBlockSide.put("n", BlockSide.NORTH);
|
||||||
toBlockSide.put("s", BlockSide.SOUTH);
|
toBlockSide.put("s", BlockSide.SOUTH);
|
||||||
toBlockSide.put("w", BlockSide.WEST);
|
toBlockSide.put("w", BlockSide.WEST);
|
||||||
toBlockSide.put("e", BlockSide.EAST);
|
toBlockSide.put("e", BlockSide.EAST);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Load models from file
|
* Load models from file
|
||||||
* @param core
|
* @param core
|
||||||
*/
|
*/
|
||||||
private static void loadModelFile(InputStream in, String fname, ConfigurationNode config, DynmapCore core, String blockset) {
|
private static void loadModelFile(InputStream in, String fname, ConfigurationNode config, DynmapCore core, String blockset) {
|
||||||
LineNumberReader rdr = null;
|
LineNumberReader rdr = null;
|
||||||
@ -364,7 +364,7 @@ public class HDBlockModels {
|
|||||||
if ((line.length() > 0) && (line.charAt(0) == '[')) { // If version constrained like
|
if ((line.length() > 0) && (line.charAt(0) == '[')) { // If version constrained like
|
||||||
int end = line.indexOf(']'); // Find end
|
int end = line.indexOf(']'); // Find end
|
||||||
if (end < 0) {
|
if (end < 0) {
|
||||||
Log.severe("Format error - line " + lineNum + " of " + fname + ": bad version limit");
|
Log.severe("Format error - line " + lineNum + ": bad version limit of file: " + fname);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
String vertst = line.substring(1, end);
|
String vertst = line.substring(1, end);
|
||||||
@ -380,7 +380,7 @@ public class HDBlockModels {
|
|||||||
}
|
}
|
||||||
// Comment line
|
// Comment line
|
||||||
if(line.startsWith("#") || line.startsWith(";")) {
|
if(line.startsWith("#") || line.startsWith(";")) {
|
||||||
skip = true;
|
skip = true;
|
||||||
}
|
}
|
||||||
// If we're skipping due to version restriction
|
// If we're skipping due to version restriction
|
||||||
if (skip) continue;
|
if (skip) continue;
|
||||||
@ -388,12 +388,12 @@ public class HDBlockModels {
|
|||||||
int typeend = line.indexOf(':');
|
int typeend = line.indexOf(':');
|
||||||
String typeid = "";
|
String typeid = "";
|
||||||
if (typeend >= 0) {
|
if (typeend >= 0) {
|
||||||
typeid = line.substring(0, typeend);
|
typeid = line.substring(0, typeend);
|
||||||
line = line.substring(typeend+1).trim();
|
line = line.substring(typeend+1).trim();
|
||||||
}
|
}
|
||||||
if (typeid.equals("block")) {
|
if (typeid.equals("block")) {
|
||||||
// Parse block states
|
// Parse block states
|
||||||
bsp.processLine(modname, line, lineNum, varvals);
|
bsp.processLine(modname, line, lineNum, varvals);
|
||||||
|
|
||||||
scale = 0;
|
scale = 0;
|
||||||
String[] args = line.split(",");
|
String[] args = line.split(",");
|
||||||
@ -414,12 +414,12 @@ public class HDBlockModels {
|
|||||||
cnt++;
|
cnt++;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Invalid model block name " + bblk.blockName + " at line " + lineNum);
|
Log.severe("Invalid model block name " + bblk.blockName + " at line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Block model missing required parameters = line " + lineNum + " of " + fname);
|
Log.severe("Block model missing required parameters = line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
layerbits = 0;
|
layerbits = 0;
|
||||||
}
|
}
|
||||||
@ -432,9 +432,9 @@ public class HDBlockModels {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (typeid.equals("rotate")) {
|
else if (typeid.equals("rotate")) {
|
||||||
// Parse block states
|
// Parse block states
|
||||||
bsp.processLine(modname, line, lineNum, varvals);
|
bsp.processLine(modname, line, lineNum, varvals);
|
||||||
|
|
||||||
String args[] = line.split(",");
|
String args[] = line.split(",");
|
||||||
int rot = -1;
|
int rot = -1;
|
||||||
for(String a : args) {
|
for(String a : args) {
|
||||||
@ -444,18 +444,18 @@ public class HDBlockModels {
|
|||||||
}
|
}
|
||||||
bsprslt = bsp.getMatchingStates();
|
bsprslt = bsp.getMatchingStates();
|
||||||
if (bsprslt.size() != 1) {
|
if (bsprslt.size() != 1) {
|
||||||
Log.severe("Missing rotate source on line " + lineNum);
|
Log.severe("Missing rotate source on line " + lineNum + " of file: " + fname);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
DynmapBlockState basebs = bsprslt.keySet().iterator().next();
|
DynmapBlockState basebs = bsprslt.keySet().iterator().next();
|
||||||
BitSet bits = bsprslt.get(basebs);
|
BitSet bits = bsprslt.get(basebs);
|
||||||
/* get old model to be rotated */
|
/* get old model to be rotated */
|
||||||
DynmapBlockState bs = basebs.getState(bits.nextSetBit(0));
|
DynmapBlockState bs = basebs.getState(bits.nextSetBit(0));
|
||||||
if (bs.isAir()) {
|
if (bs.isAir()) {
|
||||||
Log.severe("Invalid rotate ID: " + bs + " on line " + lineNum);
|
Log.severe("Invalid rotate ID: " + bs + " on line " + lineNum + " of file: " + fname);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
HDBlockModel mod = models_by_id_data.get(bs.globalStateIndex);
|
HDBlockModel mod = models_by_id_data.get(bs.globalStateIndex);
|
||||||
if (modlist.isEmpty()) {
|
if (modlist.isEmpty()) {
|
||||||
}
|
}
|
||||||
else if ((mod != null) && ((rot%90) == 0) && (mod instanceof HDBlockVolumetricModel)) {
|
else if ((mod != null) && ((rot%90) == 0) && (mod instanceof HDBlockVolumetricModel)) {
|
||||||
@ -491,14 +491,14 @@ public class HDBlockModels {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Invalid rotate error - line " + lineNum + " of " + fname);
|
Log.severe("Invalid rotate error - line " + lineNum + " of file: " + fname);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (typeid.equals("patchrotate")) {
|
else if (typeid.equals("patchrotate")) {
|
||||||
// Parse block states
|
// Parse block states
|
||||||
bsp.processLine(modname, line, lineNum, varvals);
|
bsp.processLine(modname, line, lineNum, varvals);
|
||||||
|
|
||||||
String args[] = line.split(",");
|
String args[] = line.split(",");
|
||||||
int rotx = 0;
|
int rotx = 0;
|
||||||
int roty = 0;
|
int roty = 0;
|
||||||
@ -513,17 +513,17 @@ public class HDBlockModels {
|
|||||||
}
|
}
|
||||||
bsprslt = bsp.getMatchingStates();
|
bsprslt = bsp.getMatchingStates();
|
||||||
if (bsprslt.size() != 1) {
|
if (bsprslt.size() != 1) {
|
||||||
Log.severe("Missing rotate source on line " + lineNum);
|
Log.severe("Missing rotate source on line " + lineNum + " of file: " + fname);
|
||||||
continue;
|
continue;
|
||||||
|
}
|
||||||
|
DynmapBlockState basebs = bsprslt.keySet().iterator().next();
|
||||||
|
BitSet bits = bsprslt.get(basebs);
|
||||||
|
/* get old model to be rotated */
|
||||||
|
DynmapBlockState bs = basebs.getState(bits.nextSetBit(0));
|
||||||
|
if (bs.isAir()) {
|
||||||
|
Log.severe("Invalid patchrotate ID: " + bs + " on line " + lineNum + "of file: " + fname);
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
DynmapBlockState basebs = bsprslt.keySet().iterator().next();
|
|
||||||
BitSet bits = bsprslt.get(basebs);
|
|
||||||
/* get old model to be rotated */
|
|
||||||
DynmapBlockState bs = basebs.getState(bits.nextSetBit(0));
|
|
||||||
if (bs.isAir()) {
|
|
||||||
Log.severe("Invalid patchrotate ID: " + bs + " on line " + lineNum);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
HDBlockModel mod = models_by_id_data.get(bs.globalStateIndex);
|
HDBlockModel mod = models_by_id_data.get(bs.globalStateIndex);
|
||||||
if (pmodlist.isEmpty()) {
|
if (pmodlist.isEmpty()) {
|
||||||
}
|
}
|
||||||
@ -541,27 +541,27 @@ public class HDBlockModels {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Invalid rotate error - line " + lineNum + " of " + fname);
|
Log.severe("Invalid rotate error - line " + lineNum + " of file: " + fname);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (typeid.equals("ignore-updates")) {
|
else if (typeid.equals("ignore-updates")) {
|
||||||
// Parse block states
|
// Parse block states
|
||||||
bsp.processLine(modname, line, lineNum, varvals);
|
bsp.processLine(modname, line, lineNum, varvals);
|
||||||
|
|
||||||
bsprslt = bsp.getMatchingStates();
|
bsprslt = bsp.getMatchingStates();
|
||||||
|
|
||||||
for (DynmapBlockState bbs : bsprslt.keySet()) {
|
for (DynmapBlockState bbs : bsprslt.keySet()) {
|
||||||
if (bbs.isNotAir()) {
|
if (bbs.isNotAir()) {
|
||||||
BitSet bits = bsprslt.get(bbs);
|
BitSet bits = bsprslt.get(bbs);
|
||||||
for (int i = bits.nextSetBit(0); i >= 0; i = bits.nextSetBit(i+1)) {
|
for (int i = bits.nextSetBit(0); i >= 0; i = bits.nextSetBit(i+1)) {
|
||||||
DynmapBlockState bs = bbs.getState(i);
|
DynmapBlockState bs = bbs.getState(i);
|
||||||
changeIgnoredBlocks.set(bs.globalStateIndex);
|
changeIgnoredBlocks.set(bs.globalStateIndex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Invalid update ignore block name " + bbs + " at line " + lineNum);
|
Log.severe("Invalid update ignore block name " + bbs + " at line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (typeid.equals("enabled")) { /* Test if texture file is enabled */
|
else if (typeid.equals("enabled")) { /* Test if texture file is enabled */
|
||||||
@ -584,7 +584,7 @@ public class HDBlockModels {
|
|||||||
for(int i = 0; i < args.length; i++) {
|
for(int i = 0; i < args.length; i++) {
|
||||||
String[] v = args[i].split("=");
|
String[] v = args[i].split("=");
|
||||||
if(v.length < 2) {
|
if(v.length < 2) {
|
||||||
Log.severe("Format error - line " + lineNum + " of " + fname);
|
Log.severe("Format error - line " + lineNum + " of file: " + fname);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
@ -592,7 +592,7 @@ public class HDBlockModels {
|
|||||||
int parmval = config.getInteger(v[0], val); /* Read value, with applied default */
|
int parmval = config.getInteger(v[0], val); /* Read value, with applied default */
|
||||||
varvals.put(v[0], parmval); /* And save value */
|
varvals.put(v[0], parmval); /* And save value */
|
||||||
} catch (NumberFormatException nfx) {
|
} catch (NumberFormatException nfx) {
|
||||||
Log.severe("Format error - line " + lineNum + " of " + fname);
|
Log.severe("Format error - line " + lineNum + " of file: " + fname);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -621,7 +621,7 @@ public class HDBlockModels {
|
|||||||
double p_vminatumax = -1.0;
|
double p_vminatumax = -1.0;
|
||||||
double p_uplusvmax = -1.0;
|
double p_uplusvmax = -1.0;
|
||||||
SideVisible p_sidevis = SideVisible.BOTH;
|
SideVisible p_sidevis = SideVisible.BOTH;
|
||||||
|
|
||||||
for(String a : args) {
|
for(String a : args) {
|
||||||
String[] av = a.split("=");
|
String[] av = a.split("=");
|
||||||
if(av.length < 2) continue;
|
if(av.length < 2) continue;
|
||||||
@ -668,7 +668,7 @@ public class HDBlockModels {
|
|||||||
p_vmax = Double.parseDouble(av[1]);
|
p_vmax = Double.parseDouble(av[1]);
|
||||||
}
|
}
|
||||||
else if(av[0].equals("UplusVmax")) {
|
else if(av[0].equals("UplusVmax")) {
|
||||||
Log.warning("UplusVmax deprecated - use VmaxAtUMax - line " + lineNum + " of " + fname);
|
Log.warning("UplusVmax deprecated - use VmaxAtUMax - line " + lineNum + " of file: " + fname);
|
||||||
p_uplusvmax = Double.parseDouble(av[1]);
|
p_uplusvmax = Double.parseDouble(av[1]);
|
||||||
}
|
}
|
||||||
else if(av[0].equals("VmaxAtUMax")) {
|
else if(av[0].equals("VmaxAtUMax")) {
|
||||||
@ -717,8 +717,8 @@ public class HDBlockModels {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (typeid.equals("patchblock")) {
|
else if (typeid.equals("patchblock")) {
|
||||||
// Parse block states
|
// Parse block states
|
||||||
bsp.processLine(modname, line, lineNum, varvals);
|
bsp.processLine(modname, line, lineNum, varvals);
|
||||||
|
|
||||||
String[] args = line.split(",");
|
String[] args = line.split(",");
|
||||||
ArrayList<PatchDefinition> patches = new ArrayList<PatchDefinition>();
|
ArrayList<PatchDefinition> patches = new ArrayList<PatchDefinition>();
|
||||||
@ -737,11 +737,11 @@ public class HDBlockModels {
|
|||||||
patchnum1 = Integer.parseInt(ids2[1]);
|
patchnum1 = Integer.parseInt(ids2[1]);
|
||||||
}
|
}
|
||||||
if (patchnum0 < 0) {
|
if (patchnum0 < 0) {
|
||||||
Log.severe("Invalid patch index " + patchnum0 + " - line " + lineNum + " of " + fname);
|
Log.severe("Invalid patch index " + patchnum0 + " - line " + lineNum + " of file: " + fname);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (patchnum1 < patchnum0) {
|
if (patchnum1 < patchnum0) {
|
||||||
Log.severe("Invalid patch index " + patchnum1 + " - line " + lineNum + " of " + fname);
|
Log.severe("Invalid patch index " + patchnum1 + " - line " + lineNum + " of file: " + fname);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
String patchid = av[1];
|
String patchid = av[1];
|
||||||
@ -749,7 +749,7 @@ public class HDBlockModels {
|
|||||||
for (int i = patchnum0; i <= patchnum1; i++) {
|
for (int i = patchnum0; i <= patchnum1; i++) {
|
||||||
PatchDefinition pd = pdf.getPatchByName(patchid, i);
|
PatchDefinition pd = pdf.getPatchByName(patchid, i);
|
||||||
if (pd == null) {
|
if (pd == null) {
|
||||||
Log.severe("Invalid patch ID " + patchid + " - line " + lineNum + " of " + fname);
|
Log.severe("Invalid patch ID " + patchid + " - line " + lineNum + " of file: " + fname);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
patches.add(i, pd);
|
patches.add(i, pd);
|
||||||
@ -769,20 +769,20 @@ public class HDBlockModels {
|
|||||||
cnt++;
|
cnt++;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Invalid patchmodel block name " + bs + " at line " + lineNum);
|
Log.severe("Invalid patchmodel block name " + bs + " at line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Patch block model missing required parameters = line " + lineNum + " of " + fname);
|
Log.severe("Patch block model missing required parameters = line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Shortcut for defining a patchblock that is a simple rectangular prism, with sidex corresponding to full block sides
|
// Shortcut for defining a patchblock that is a simple rectangular prism, with sidex corresponding to full block sides
|
||||||
else if (typeid.equals("boxblock")) {
|
else if (typeid.equals("boxblock")) {
|
||||||
// Parse block states
|
// Parse block states
|
||||||
bsp.processLine(modname, line, lineNum, varvals);
|
bsp.processLine(modname, line, lineNum, varvals);
|
||||||
|
|
||||||
String[] args = line.split(",");
|
String[] args = line.split(",");
|
||||||
double xmin = 0.0, xmax = 1.0, ymin = 0.0, ymax = 1.0, zmin = 0.0, zmax = 1.0;
|
double xmin = 0.0, xmax = 1.0, ymin = 0.0, ymax = 1.0, zmin = 0.0, zmax = 1.0;
|
||||||
int[] patchlist = boxPatchList;
|
int[] patchlist = boxPatchList;
|
||||||
for(String a : args) {
|
for(String a : args) {
|
||||||
@ -807,11 +807,11 @@ public class HDBlockModels {
|
|||||||
zmax = Double.parseDouble(av[1]);
|
zmax = Double.parseDouble(av[1]);
|
||||||
}
|
}
|
||||||
else if(av[0].equals("patches")) {
|
else if(av[0].equals("patches")) {
|
||||||
String[] v = av[1].split("/");
|
String[] v = av[1].split("/");
|
||||||
patchlist = new int[6];
|
patchlist = new int[6];
|
||||||
for (int vidx = 0; (vidx < v.length) && (vidx < patchlist.length); vidx++) {
|
for (int vidx = 0; (vidx < v.length) && (vidx < patchlist.length); vidx++) {
|
||||||
patchlist[vidx] = getIntValue(varvals, v[vidx]);
|
patchlist[vidx] = getIntValue(varvals, v[vidx]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* If we have everything, build block */
|
/* If we have everything, build block */
|
||||||
@ -832,49 +832,49 @@ public class HDBlockModels {
|
|||||||
cnt++;
|
cnt++;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Invalid boxmodel block name " + bs + " at line " + lineNum);
|
Log.severe("Invalid boxmodel block name " + bs + " at line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Box block model missing required parameters = line " + lineNum + " of " + fname);
|
Log.severe("Box block model missing required parameters = line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Shortcut for defining a patchblock that is a simple rectangular prism, with sidex corresponding to full block sides
|
// Shortcut for defining a patchblock that is a simple rectangular prism, with sidex corresponding to full block sides
|
||||||
else if (typeid.equals("boxlist")) {
|
else if (typeid.equals("boxlist")) {
|
||||||
// Parse block states
|
// Parse block states
|
||||||
bsp.processLine(modname, line, lineNum, varvals);
|
bsp.processLine(modname, line, lineNum, varvals);
|
||||||
|
|
||||||
String[] args = line.split(",");
|
String[] args = line.split(",");
|
||||||
ArrayList<BoxLimits> boxes = new ArrayList<BoxLimits>();
|
ArrayList<BoxLimits> boxes = new ArrayList<BoxLimits>();
|
||||||
for (String a : args) {
|
for (String a : args) {
|
||||||
String[] av = a.split("=");
|
String[] av = a.split("=");
|
||||||
if(av.length < 2) continue;
|
if(av.length < 2) continue;
|
||||||
if (av[0].equals("box")) {
|
if (av[0].equals("box")) {
|
||||||
String[] prms = av[1].split(":");
|
String[] prms = av[1].split(":");
|
||||||
BoxLimits box = new BoxLimits();
|
BoxLimits box = new BoxLimits();
|
||||||
if (prms.length > 0)
|
if (prms.length > 0)
|
||||||
box.xmin = Double.parseDouble(prms[0]);
|
box.xmin = Double.parseDouble(prms[0]);
|
||||||
if (prms.length > 1)
|
if (prms.length > 1)
|
||||||
box.xmax = Double.parseDouble(prms[1]);
|
box.xmax = Double.parseDouble(prms[1]);
|
||||||
if (prms.length > 2)
|
if (prms.length > 2)
|
||||||
box.ymin = Double.parseDouble(prms[2]);
|
box.ymin = Double.parseDouble(prms[2]);
|
||||||
if (prms.length > 3)
|
if (prms.length > 3)
|
||||||
box.ymax = Double.parseDouble(prms[3]);
|
box.ymax = Double.parseDouble(prms[3]);
|
||||||
if (prms.length > 4)
|
if (prms.length > 4)
|
||||||
box.zmin = Double.parseDouble(prms[4]);
|
box.zmin = Double.parseDouble(prms[4]);
|
||||||
if (prms.length > 5)
|
if (prms.length > 5)
|
||||||
box.zmax = Double.parseDouble(prms[5]);
|
box.zmax = Double.parseDouble(prms[5]);
|
||||||
if (prms.length > 6) {
|
if (prms.length > 6) {
|
||||||
String[] pl = prms[6].split("/");
|
String[] pl = prms[6].split("/");
|
||||||
for (int p = 0; (p < 6) && (p < pl.length); p++) {
|
for (int p = 0; (p < 6) && (p < pl.length); p++) {
|
||||||
box.patches[p] = Integer.parseInt(pl[p]);
|
box.patches[p] = Integer.parseInt(pl[p]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (prms.length > 7) {
|
if (prms.length > 7) {
|
||||||
box.yrot = Integer.parseInt(prms[7]);
|
box.yrot = Integer.parseInt(prms[7]);
|
||||||
}
|
}
|
||||||
boxes.add(box);
|
boxes.add(box);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* If we have everything, build block */
|
/* If we have everything, build block */
|
||||||
@ -882,9 +882,9 @@ public class HDBlockModels {
|
|||||||
pmodlist.clear();
|
pmodlist.clear();
|
||||||
if (bsprslt.size() > 0) {
|
if (bsprslt.size() > 0) {
|
||||||
ArrayList<RenderPatch> pd = new ArrayList<RenderPatch>();
|
ArrayList<RenderPatch> pd = new ArrayList<RenderPatch>();
|
||||||
|
|
||||||
for (BoxLimits bl : boxes) {
|
for (BoxLimits bl : boxes) {
|
||||||
CustomRenderer.addBox(pdf, pd, bl.xmin, bl.xmax, bl.ymin, bl.ymax, bl.zmin, bl.zmax, bl.patches, bl.yrot);
|
CustomRenderer.addBox(pdf, pd, bl.xmin, bl.xmax, bl.ymin, bl.ymax, bl.zmin, bl.zmax, bl.patches, bl.yrot);
|
||||||
}
|
}
|
||||||
PatchDefinition[] patcharray = new PatchDefinition[pd.size()];
|
PatchDefinition[] patcharray = new PatchDefinition[pd.size()];
|
||||||
for (int i = 0; i < patcharray.length; i++) {
|
for (int i = 0; i < patcharray.length; i++) {
|
||||||
@ -898,18 +898,18 @@ public class HDBlockModels {
|
|||||||
cnt++;
|
cnt++;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Invalid boxlist block name " + bs + " at line " + lineNum);
|
Log.severe("Invalid boxlist block name " + bs + " at line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Box list block model missing required parameters = line " + lineNum + " of " + fname);
|
Log.severe("Box list block model missing required parameters = line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Shortcur for building JSON model style
|
// Shortcur for building JSON model style
|
||||||
else if (typeid.equals("modellist")) {
|
else if (typeid.equals("modellist")) {
|
||||||
// Parse block states
|
// Parse block states
|
||||||
bsp.processLine(modname, line, lineNum, varvals);
|
bsp.processLine(modname, line, lineNum, varvals);
|
||||||
|
|
||||||
String[] args = line.split(",");
|
String[] args = line.split(",");
|
||||||
ArrayList<ModelBox> boxes = new ArrayList<ModelBox>();
|
ArrayList<ModelBox> boxes = new ArrayList<ModelBox>();
|
||||||
@ -917,98 +917,98 @@ public class HDBlockModels {
|
|||||||
String[] av = a.split("=");
|
String[] av = a.split("=");
|
||||||
if(av.length < 2) continue;
|
if(av.length < 2) continue;
|
||||||
if (av[0].equals("box")) {
|
if (av[0].equals("box")) {
|
||||||
// box=from-x/y/z:to-x/y/z/rotx/roty/rotz:<side - upnsew>/<txtidx>/umin/vmin/umax/vmax>:...
|
// box=from-x/y/z:to-x/y/z/rotx/roty/rotz:<side - upnsew>/<txtidx>/umin/vmin/umax/vmax>:...
|
||||||
String[] prms = av[1].split(":");
|
String[] prms = av[1].split(":");
|
||||||
|
|
||||||
ModelBox box = new ModelBox();
|
ModelBox box = new ModelBox();
|
||||||
if (prms.length > 0) { // Handle from (from-x/y/z or from-x/y/z/shadow)
|
if (prms.length > 0) { // Handle from (from-x/y/z or from-x/y/z/shadow)
|
||||||
String[] xyz = prms[0].split("/");
|
String[] xyz = prms[0].split("/");
|
||||||
if ((xyz.length == 3) || (xyz.length == 4)) {
|
if ((xyz.length == 3) || (xyz.length == 4)) {
|
||||||
box.from[0] = Double.parseDouble(xyz[0]);
|
box.from[0] = Double.parseDouble(xyz[0]);
|
||||||
box.from[1] = Double.parseDouble(xyz[1]);
|
box.from[1] = Double.parseDouble(xyz[1]);
|
||||||
box.from[2] = Double.parseDouble(xyz[2]);
|
box.from[2] = Double.parseDouble(xyz[2]);
|
||||||
if ((xyz.length >= 4) && (xyz[3].equals("false"))) {
|
if ((xyz.length >= 4) && (xyz[3].equals("false"))) {
|
||||||
box.shade = false;
|
box.shade = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Invalid modellist FROM value (" + prms[0] + " at line " + lineNum);
|
Log.severe("Invalid modellist FROM value (" + prms[0] + " at line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (prms.length > 1) { // Handle to (to-x/y/z or to-x/y/z/rotx/roty/rotz) or to-x/y/z/rotx/roty/rotz/rorigx/rorigy/rorigz
|
if (prms.length > 1) { // Handle to (to-x/y/z or to-x/y/z/rotx/roty/rotz) or to-x/y/z/rotx/roty/rotz/rorigx/rorigy/rorigz
|
||||||
String[] xyz = prms[1].split("/");
|
String[] xyz = prms[1].split("/");
|
||||||
if (xyz.length >= 3) {
|
if (xyz.length >= 3) {
|
||||||
box.to[0] = Double.parseDouble(xyz[0]);
|
box.to[0] = Double.parseDouble(xyz[0]);
|
||||||
box.to[1] = Double.parseDouble(xyz[1]);
|
box.to[1] = Double.parseDouble(xyz[1]);
|
||||||
box.to[2] = Double.parseDouble(xyz[2]);
|
box.to[2] = Double.parseDouble(xyz[2]);
|
||||||
if (xyz.length >= 6) { // If 6, second set are rotations (xrot/yrot/zrot)
|
if (xyz.length >= 6) { // If 6, second set are rotations (xrot/yrot/zrot)
|
||||||
box.xrot = Double.parseDouble(xyz[3]);
|
box.xrot = Double.parseDouble(xyz[3]);
|
||||||
box.yrot = Double.parseDouble(xyz[4]);
|
box.yrot = Double.parseDouble(xyz[4]);
|
||||||
box.zrot = Double.parseDouble(xyz[5]);
|
box.zrot = Double.parseDouble(xyz[5]);
|
||||||
}
|
}
|
||||||
if (xyz.length >= 9) { // If 9, third set is rotation origin (xrot/yrot/zrot)
|
if (xyz.length >= 9) { // If 9, third set is rotation origin (xrot/yrot/zrot)
|
||||||
box.xrotorig = Double.parseDouble(xyz[6]);
|
box.xrotorig = Double.parseDouble(xyz[6]);
|
||||||
box.yrotorig = Double.parseDouble(xyz[7]);
|
box.yrotorig = Double.parseDouble(xyz[7]);
|
||||||
box.zrotorig = Double.parseDouble(xyz[8]);
|
box.zrotorig = Double.parseDouble(xyz[8]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Invalid modellist TO value (" + prms[1] + " at line " + lineNum);
|
Log.severe("Invalid modellist TO value (" + prms[1] + " at line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Rest are faces (<side - upnsew>/<txtidx>/umin/vmin/umax/vmax> or <<side - upnsew>/<txtidx>)
|
// Rest are faces (<side - upnsew>/<txtidx>/umin/vmin/umax/vmax> or <<side - upnsew>/<txtidx>)
|
||||||
// OR R/mrx/mry/mrz for model rotation
|
// OR R/mrx/mry/mrz for model rotation
|
||||||
for (int faceidx = 2; faceidx < prms.length; faceidx++) {
|
for (int faceidx = 2; faceidx < prms.length; faceidx++) {
|
||||||
String v = prms[faceidx];
|
String v = prms[faceidx];
|
||||||
String[] flds = v.split("/");
|
String[] flds = v.split("/");
|
||||||
// If rotation
|
// If rotation
|
||||||
if (flds[0].equals("R") && (flds.length == 4)) {
|
if (flds[0].equals("R") && (flds.length == 4)) {
|
||||||
box.modrotx = Integer.parseInt(flds[1]);
|
box.modrotx = Integer.parseInt(flds[1]);
|
||||||
box.modroty = Integer.parseInt(flds[2]);
|
box.modroty = Integer.parseInt(flds[2]);
|
||||||
box.modrotz = Integer.parseInt(flds[3]);
|
box.modrotz = Integer.parseInt(flds[3]);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
ModelBoxSide side = new ModelBoxSide();
|
ModelBoxSide side = new ModelBoxSide();
|
||||||
side.rot = null;
|
side.rot = null;
|
||||||
if ((flds.length != 2) && (flds.length != 6)) {
|
if ((flds.length != 2) && (flds.length != 6)) {
|
||||||
Log.severe("Invalid modellist face '" + v + "' at line " + lineNum);
|
Log.severe("Invalid modellist face '" + v + "' at line " + lineNum + " of file: " + fname);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (flds.length > 0) {
|
if (flds.length > 0) {
|
||||||
String face = flds[0];
|
String face = flds[0];
|
||||||
side.side = toBlockSide.get(face.substring(0, 1));
|
side.side = toBlockSide.get(face.substring(0, 1));
|
||||||
if (side.side == null) {
|
if (side.side == null) {
|
||||||
Log.severe("Invalid modellist side value (" + face + ") in '" + v + "' at line " + lineNum);
|
Log.severe("Invalid modellist side value (" + face + ") in '" + v + "' at line " + lineNum + " of file: " + fname);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (flds[0].length() > 1) {
|
if (flds[0].length() > 1) {
|
||||||
String r = flds[0].substring(1);
|
String r = flds[0].substring(1);
|
||||||
switch (r) {
|
switch (r) {
|
||||||
case "90":
|
case "90":
|
||||||
side.rot = ModelBlockModel.SideRotation.DEG90;
|
side.rot = ModelBlockModel.SideRotation.DEG90;
|
||||||
break;
|
break;
|
||||||
case "180":
|
case "180":
|
||||||
side.rot = ModelBlockModel.SideRotation.DEG180;
|
side.rot = ModelBlockModel.SideRotation.DEG180;
|
||||||
break;
|
break;
|
||||||
case "270":
|
case "270":
|
||||||
side.rot = ModelBlockModel.SideRotation.DEG270;
|
side.rot = ModelBlockModel.SideRotation.DEG270;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (flds.length > 1) {
|
if (flds.length > 1) {
|
||||||
side.textureid = getIntValue(varvals, flds[1]);
|
side.textureid = getIntValue(varvals, flds[1]);
|
||||||
}
|
}
|
||||||
if (flds.length >= 6) {
|
if (flds.length >= 6) {
|
||||||
side.uv = new double[4];
|
side.uv = new double[4];
|
||||||
side.uv[0] = Double.parseDouble(flds[2]);
|
side.uv[0] = Double.parseDouble(flds[2]);
|
||||||
side.uv[1] = Double.parseDouble(flds[3]);
|
side.uv[1] = Double.parseDouble(flds[3]);
|
||||||
side.uv[2] = Double.parseDouble(flds[4]);
|
side.uv[2] = Double.parseDouble(flds[4]);
|
||||||
side.uv[3] = Double.parseDouble(flds[5]);
|
side.uv[3] = Double.parseDouble(flds[5]);
|
||||||
}
|
}
|
||||||
box.sides.add(side);
|
box.sides.add(side);
|
||||||
}
|
}
|
||||||
boxes.add(box);
|
boxes.add(box);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* If we have everything, build block */
|
/* If we have everything, build block */
|
||||||
@ -1016,35 +1016,35 @@ public class HDBlockModels {
|
|||||||
pmodlist.clear();
|
pmodlist.clear();
|
||||||
if (bsprslt.size() > 0) {
|
if (bsprslt.size() > 0) {
|
||||||
ArrayList<PatchDefinition> pd = new ArrayList<PatchDefinition>();
|
ArrayList<PatchDefinition> pd = new ArrayList<PatchDefinition>();
|
||||||
|
|
||||||
for (ModelBox bl : boxes) {
|
for (ModelBox bl : boxes) {
|
||||||
// Loop through faces
|
// Loop through faces
|
||||||
for (ModelBoxSide side : bl.sides) {
|
for (ModelBoxSide side : bl.sides) {
|
||||||
PatchDefinition patch = pdf.getModelFace(bl.from, bl.to, side.side, side.uv, side.rot, bl.shade, side.textureid);
|
PatchDefinition patch = pdf.getModelFace(bl.from, bl.to, side.side, side.uv, side.rot, bl.shade, side.textureid);
|
||||||
if (patch != null) {
|
if (patch != null) {
|
||||||
// If any rotations, apply them here
|
// If any rotations, apply them here
|
||||||
if ((bl.xrot != 0) || (bl.yrot != 0) || (bl.zrot != 0)) {
|
if ((bl.xrot != 0) || (bl.yrot != 0) || (bl.zrot != 0)) {
|
||||||
patch = pdf.getPatch(patch, -bl.xrot, -bl.yrot, -bl.zrot,
|
patch = pdf.getPatch(patch, -bl.xrot, -bl.yrot, -bl.zrot,
|
||||||
new Vector3D(bl.xrotorig / 16, bl.yrotorig / 16, bl.zrotorig / 16),
|
new Vector3D(bl.xrotorig / 16, bl.yrotorig / 16, bl.zrotorig / 16),
|
||||||
patch.textureindex);
|
patch.textureindex);
|
||||||
if (patch == null) continue;
|
if (patch == null) continue;
|
||||||
}
|
}
|
||||||
// If model rotation, apply too
|
// If model rotation, apply too
|
||||||
if ((bl.modrotx != 0) || (bl.modroty != 0) || (bl.modrotz != 0)) {
|
if ((bl.modrotx != 0) || (bl.modroty != 0) || (bl.modrotz != 0)) {
|
||||||
patch = pdf.getPatch(patch, bl.modrotx, bl.modroty, bl.modrotz, patch.textureindex);
|
patch = pdf.getPatch(patch, bl.modrotx, bl.modroty, bl.modrotz, patch.textureindex);
|
||||||
if (patch == null) continue;
|
if (patch == null) continue;
|
||||||
}
|
}
|
||||||
pd.add(patch);
|
pd.add(patch);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe(String.format("Invalid modellist patch for box %.02f/%.02f/%.02f:%.02f/%.02f/%.02f side %s at line %d", bl.from[0], bl.from[1], bl.from[2], bl.to[0], bl.to[1], bl.to[2], side.side, lineNum));
|
Log.severe(String.format("Invalid modellist patch for box %.02f/%.02f/%.02f:%.02f/%.02f/%.02f side %s at line %d of file: %s", bl.from[0], bl.from[1], bl.from[2], bl.to[0], bl.to[1], bl.to[2], side.side, lineNum, fname));
|
||||||
Log.verboseinfo(String.format("line = %s:%s", typeid, line));
|
Log.verboseinfo(String.format("line = %s:%s", typeid, line));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
PatchDefinition[] patcharray = new PatchDefinition[pd.size()];
|
PatchDefinition[] patcharray = new PatchDefinition[pd.size()];
|
||||||
for (int i = 0; i < patcharray.length; i++) {
|
for (int i = 0; i < patcharray.length; i++) {
|
||||||
patcharray[i] = pd.get(i);
|
patcharray[i] = pd.get(i);
|
||||||
}
|
}
|
||||||
if (patcharray.length > max_patches)
|
if (patcharray.length > max_patches)
|
||||||
max_patches = patcharray.length;
|
max_patches = patcharray.length;
|
||||||
@ -1054,26 +1054,26 @@ public class HDBlockModels {
|
|||||||
cnt++;
|
cnt++;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Invalid modellist block name " + bs + " at line " + lineNum);
|
Log.severe("Invalid modellist block name " + bs + " at line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Model list block model missing required parameters = line " + lineNum + " of " + fname);
|
Log.severe("Model list block model missing required parameters = line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (typeid.equals("customblock")) {
|
else if (typeid.equals("customblock")) {
|
||||||
// Parse block states
|
// Parse block states
|
||||||
bsp.processLine(modname, line, lineNum, varvals);
|
bsp.processLine(modname, line, lineNum, varvals);
|
||||||
|
|
||||||
HashMap<String,String> custargs = new HashMap<String,String>();
|
HashMap<String,String> custargs = new HashMap<String,String>();
|
||||||
String[] args = line.split(",");
|
String[] args = line.split(",");
|
||||||
String cls = null;
|
String cls = null;
|
||||||
for (String a : args) {
|
for (String a : args) {
|
||||||
String[] av = a.split("=");
|
String[] av = a.split("=");
|
||||||
if (av.length < 2) continue;
|
if (av.length < 2) continue;
|
||||||
if (av[0].equals("id") || av[0].equals("data") || av[0].equals("state")) {
|
if (av[0].equals("id") || av[0].equals("data") || av[0].equals("state")) {
|
||||||
// Skip block state args - should not be bassed to custom block handler
|
// Skip block state args - should not be bassed to custom block handler
|
||||||
}
|
}
|
||||||
else if (av[0].equals("class")) {
|
else if (av[0].equals("class")) {
|
||||||
cls = av[1];
|
cls = av[1];
|
||||||
@ -1094,7 +1094,7 @@ public class HDBlockModels {
|
|||||||
if (bs.isNotAir()) {
|
if (bs.isNotAir()) {
|
||||||
CustomBlockModel cbm = new CustomBlockModel(bs, bsprslt.get(bs), cls, custargs, blockset);
|
CustomBlockModel cbm = new CustomBlockModel(bs, bsprslt.get(bs), cls, custargs, blockset);
|
||||||
if(cbm.render == null) {
|
if(cbm.render == null) {
|
||||||
Log.severe("Custom block model failed to initialize = line " + lineNum + " of " + fname);
|
Log.severe("Custom block model failed to initialize = line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
/* Update maximum texture count */
|
/* Update maximum texture count */
|
||||||
@ -1106,12 +1106,12 @@ public class HDBlockModels {
|
|||||||
cnt++;
|
cnt++;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Invalid custommodel block name " + bs + " at line " + lineNum);
|
Log.severe("Invalid custommodel block name " + bs + " at line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Log.severe("Custom block model missing required parameters = line " + lineNum + " of " + fname);
|
Log.severe("Custom block model missing required parameters = line " + lineNum + " of file: " + fname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (typeid.equals("modname")) {
|
else if (typeid.equals("modname")) {
|
||||||
@ -1177,7 +1177,7 @@ public class HDBlockModels {
|
|||||||
} catch (IOException iox) {
|
} catch (IOException iox) {
|
||||||
Log.severe("Error reading models.txt - " + iox.toString());
|
Log.severe("Error reading models.txt - " + iox.toString());
|
||||||
} catch (NumberFormatException nfx) {
|
} catch (NumberFormatException nfx) {
|
||||||
Log.severe("Format error - line " + rdr.getLineNumber() + " of " + fname + ": " + nfx.getMessage());
|
Log.severe("Format error - line " + rdr.getLineNumber() + " of file: " + fname + ": " + nfx.getMessage());
|
||||||
} finally {
|
} finally {
|
||||||
if(rdr != null) {
|
if(rdr != null) {
|
||||||
try {
|
try {
|
||||||
@ -1209,13 +1209,13 @@ public class HDBlockModels {
|
|||||||
}
|
}
|
||||||
return v2.toString();
|
return v2.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
private static long parseVersion(String v, boolean up) {
|
private static long parseVersion(String v, boolean up) {
|
||||||
v = normalizeVersion(v);
|
v = normalizeVersion(v);
|
||||||
String[] vv = v.split("\\.");
|
String[] vv = v.split("\\.");
|
||||||
long ver = 0;
|
long ver = 0;
|
||||||
for (int i = 0; i < vscale.length; i++) {
|
for (int i = 0; i < vscale.length; i++) {
|
||||||
if (i < vv.length){
|
if (i < vv.length){
|
||||||
try {
|
try {
|
||||||
ver += vscale[i] * Integer.parseInt(vv[i]);
|
ver += vscale[i] * Integer.parseInt(vv[i]);
|
||||||
} catch (NumberFormatException nfx) {
|
} catch (NumberFormatException nfx) {
|
||||||
@ -1234,10 +1234,10 @@ public class HDBlockModels {
|
|||||||
String[] rng = range.split("-", -1);
|
String[] rng = range.split("-", -1);
|
||||||
String low;
|
String low;
|
||||||
String high;
|
String high;
|
||||||
|
|
||||||
long v = parseVersion(ver, false);
|
long v = parseVersion(ver, false);
|
||||||
if (v == 0) return false;
|
if (v == 0) return false;
|
||||||
|
|
||||||
if (rng.length == 1) {
|
if (rng.length == 1) {
|
||||||
low = rng[0];
|
low = rng[0];
|
||||||
high = rng[0];
|
high = rng[0];
|
||||||
|
@ -1273,7 +1273,17 @@ public class TexturePack {
|
|||||||
imgs[idx].width = img.getWidth();
|
imgs[idx].width = img.getWidth();
|
||||||
imgs[idx].height = img.getHeight();
|
imgs[idx].height = img.getHeight();
|
||||||
imgs[idx].argb = new int[imgs[idx].width * imgs[idx].height];
|
imgs[idx].argb = new int[imgs[idx].width * imgs[idx].height];
|
||||||
img.getRGB(0, 0, imgs[idx].width, imgs[idx].height, imgs[idx].argb, 0, imgs[idx].width);
|
if (img.getType() == BufferedImage.TYPE_BYTE_GRAY) { // We don't want alpha correction, apparently
|
||||||
|
float[] buffer = new float[imgs[idx].width * imgs[idx].height];
|
||||||
|
img.getData().getPixels(0, 0, imgs[idx].width, imgs[idx].height, buffer);
|
||||||
|
for (int i = 0; i < imgs[idx].argb.length; i++) {
|
||||||
|
int v = (int) buffer[i];
|
||||||
|
imgs[idx].argb[i] = 0xFF000000 | (v << 16) | (v << 8) | v;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
img.getRGB(0, 0, imgs[idx].width, imgs[idx].height, imgs[idx].argb, 0, imgs[idx].width);
|
||||||
|
}
|
||||||
img.flush();
|
img.flush();
|
||||||
imgs[idx].isLoaded = true;
|
imgs[idx].isLoaded = true;
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package org.dynmap.storage.aws_s3;
|
package org.dynmap.storage.aws_s3;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
import java.net.URI;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.security.MessageDigest;
|
import java.security.MessageDigest;
|
||||||
import java.security.NoSuchAlgorithmException;
|
import java.security.NoSuchAlgorithmException;
|
||||||
@ -139,7 +140,7 @@ public class AWSS3MapStorage extends MapStorage {
|
|||||||
else {
|
else {
|
||||||
PutObjectRequest req = PutObjectRequest.builder().bucketName(bucketname).key(baseKey).contentType(map.getImageFormat().getEncoding().getContentType())
|
PutObjectRequest req = PutObjectRequest.builder().bucketName(bucketname).key(baseKey).contentType(map.getImageFormat().getEncoding().getContentType())
|
||||||
.addMetadata("x-dynmap-hash", Long.toHexString(hash)).addMetadata("x-dynmap-ts", Long.toString(timestamp)).build();
|
.addMetadata("x-dynmap-hash", Long.toHexString(hash)).addMetadata("x-dynmap-ts", Long.toString(timestamp)).build();
|
||||||
s3.putObject(req, RequestBody.fromBytes(encImage.buf, encImage.len));
|
s3.putObject(req, RequestBody.fromBytes(encImage.buf));
|
||||||
}
|
}
|
||||||
done = true;
|
done = true;
|
||||||
} catch (S3Exception x) {
|
} catch (S3Exception x) {
|
||||||
@ -221,7 +222,7 @@ public class AWSS3MapStorage extends MapStorage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private String bucketname;
|
private String bucketname;
|
||||||
private String region;
|
private Region region;
|
||||||
private String access_key_id;
|
private String access_key_id;
|
||||||
private String secret_access_key;
|
private String secret_access_key;
|
||||||
private String prefix;
|
private String prefix;
|
||||||
@ -248,10 +249,20 @@ public class AWSS3MapStorage extends MapStorage {
|
|||||||
}
|
}
|
||||||
// Get our settings
|
// Get our settings
|
||||||
bucketname = core.configuration.getString("storage/bucketname", "dynmap");
|
bucketname = core.configuration.getString("storage/bucketname", "dynmap");
|
||||||
region = core.configuration.getString("storage/region", "us-east-1");
|
|
||||||
access_key_id = core.configuration.getString("storage/aws_access_key_id", System.getenv("AWS_ACCESS_KEY_ID"));
|
access_key_id = core.configuration.getString("storage/aws_access_key_id", System.getenv("AWS_ACCESS_KEY_ID"));
|
||||||
secret_access_key = core.configuration.getString("storage/aws_secret_access_key", System.getenv("AWS_SECRET_ACCESS_KEY"));
|
secret_access_key = core.configuration.getString("storage/aws_secret_access_key", System.getenv("AWS_SECRET_ACCESS_KEY"));
|
||||||
prefix = core.configuration.getString("storage/prefix", "");
|
prefix = core.configuration.getString("storage/prefix", "");
|
||||||
|
|
||||||
|
// Either use a custom region, or one of the default AWS regions
|
||||||
|
String region_name = core.configuration.getString("storage/region", "us-east-1");
|
||||||
|
String region_endpoint = core.configuration.getString("storage/override_endpoint", "");
|
||||||
|
|
||||||
|
if (region_endpoint.length() > 0) {
|
||||||
|
region = Region.of(region_name, URI.create(region_endpoint));
|
||||||
|
} else {
|
||||||
|
region = Region.fromString(region_name);
|
||||||
|
}
|
||||||
|
|
||||||
if ((prefix.length() > 0) && (prefix.charAt(prefix.length()-1) != '/')) {
|
if ((prefix.length() > 0) && (prefix.charAt(prefix.length()-1) != '/')) {
|
||||||
prefix += '/';
|
prefix += '/';
|
||||||
}
|
}
|
||||||
@ -518,7 +529,7 @@ public class AWSS3MapStorage extends MapStorage {
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
PutObjectRequest req = PutObjectRequest.builder().bucketName(bucketname).key(baseKey).contentType("image/png").build();
|
PutObjectRequest req = PutObjectRequest.builder().bucketName(bucketname).key(baseKey).contentType("image/png").build();
|
||||||
s3.putObject(req, RequestBody.fromBytes(encImage.buf, encImage.len));
|
s3.putObject(req, RequestBody.fromBytes(encImage.buf));
|
||||||
}
|
}
|
||||||
done = true;
|
done = true;
|
||||||
} catch (S3Exception x) {
|
} catch (S3Exception x) {
|
||||||
@ -571,7 +582,7 @@ public class AWSS3MapStorage extends MapStorage {
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
PutObjectRequest req = PutObjectRequest.builder().bucketName(bucketname).key(baseKey).contentType("image/png").build();
|
PutObjectRequest req = PutObjectRequest.builder().bucketName(bucketname).key(baseKey).contentType("image/png").build();
|
||||||
s3.putObject(req, RequestBody.fromBytes(encImage.buf, encImage.len));
|
s3.putObject(req, RequestBody.fromBytes(encImage.buf));
|
||||||
}
|
}
|
||||||
done = true;
|
done = true;
|
||||||
} catch (S3Exception x) {
|
} catch (S3Exception x) {
|
||||||
@ -734,7 +745,7 @@ public class AWSS3MapStorage extends MapStorage {
|
|||||||
ct = "application/x-javascript";
|
ct = "application/x-javascript";
|
||||||
}
|
}
|
||||||
PutObjectRequest req = PutObjectRequest.builder().bucketName(bucketname).key(baseKey).contentType(ct).build();
|
PutObjectRequest req = PutObjectRequest.builder().bucketName(bucketname).key(baseKey).contentType(ct).build();
|
||||||
s3.putObject(req, RequestBody.fromBytes(content.buf, content.len));
|
s3.putObject(req, RequestBody.fromBytes(content.buf));
|
||||||
standalone_cache.put(fileid, digest);
|
standalone_cache.put(fileid, digest);
|
||||||
}
|
}
|
||||||
done = true;
|
done = true;
|
||||||
@ -763,7 +774,7 @@ public class AWSS3MapStorage extends MapStorage {
|
|||||||
if (cpoolCount < POOLSIZE) { // Still more we can have
|
if (cpoolCount < POOLSIZE) { // Still more we can have
|
||||||
c = new DefaultS3ClientBuilder()
|
c = new DefaultS3ClientBuilder()
|
||||||
.credentialsProvider(() -> AwsBasicCredentials.create(access_key_id, secret_access_key))
|
.credentialsProvider(() -> AwsBasicCredentials.create(access_key_id, secret_access_key))
|
||||||
.region(Region.fromString(region))
|
.region(region)
|
||||||
.httpClient(URLConnectionSdkHttpClient.create())
|
.httpClient(URLConnectionSdkHttpClient.create())
|
||||||
.build();
|
.build();
|
||||||
if (c == null) {
|
if (c == null) {
|
||||||
|
@ -533,6 +533,7 @@ public class SQLiteMapStorage extends MapStorage {
|
|||||||
|
|
||||||
private static Connection configureConnection(Connection conn) throws SQLException {
|
private static Connection configureConnection(Connection conn) throws SQLException {
|
||||||
final Statement statement = conn.createStatement();
|
final Statement statement = conn.createStatement();
|
||||||
|
statement.execute("PRAGMA auto_vacuum = FULL;");
|
||||||
statement.execute("PRAGMA journal_mode = WAL;");
|
statement.execute("PRAGMA journal_mode = WAL;");
|
||||||
statement.close();
|
statement.close();
|
||||||
return conn;
|
return conn;
|
||||||
|
@ -570,6 +570,14 @@
|
|||||||
transition: all 0.6s ease-in-out 0s;
|
transition: all 0.6s ease-in-out 0s;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* do not animate player movements when zooming */
|
||||||
|
.dynmap .leaflet-zoom-anim .leaflet-zoom-animated.playerMarker {
|
||||||
|
-moz-transition: -moz-transform 0.25s cubic-bezier(0,0,0.25,1);
|
||||||
|
-webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
|
||||||
|
-o-transition: transform 0.25s cubic-bezier(0,0,0.25,1);
|
||||||
|
transition: transform 0.25s cubic-bezier(0,0,0.25,1);
|
||||||
|
}
|
||||||
|
|
||||||
.dynmap .playerIcon {
|
.dynmap .playerIcon {
|
||||||
margin-top: -16px;
|
margin-top: -16px;
|
||||||
margin-left: -16px;
|
margin-left: -16px;
|
||||||
|
@ -856,7 +856,13 @@ modellist:id=%iron_bars,state=west:false/east:false/south:false/north:false,box=
|
|||||||
# Fern
|
# Fern
|
||||||
# Dead shrub
|
# Dead shrub
|
||||||
# Tall grass
|
# Tall grass
|
||||||
patchblock:id=fern,id=grass,id=cobweb,id=tall_grass,id=dead_bush,id=sugar_cane,patch0=VertX1Z0ToX0Z1,patch1=VertX1Z0ToX0Z1@90
|
patchblock:id=fern,patch0=VertX1Z0ToX0Z1,patch1=VertX1Z0ToX0Z1@90
|
||||||
|
[-1.20.2]patchblock:id=grass,patch0=VertX1Z0ToX0Z1,patch1=VertX1Z0ToX0Z1@90
|
||||||
|
[1.20.3-]patchblock:id=short_grass,patch0=VertX1Z0ToX0Z1,patch1=VertX1Z0ToX0Z1@90
|
||||||
|
patchblock:id=cobweb,patch0=VertX1Z0ToX0Z1,patch1=VertX1Z0ToX0Z1@90
|
||||||
|
patchblock:id=tall_grass,patch0=VertX1Z0ToX0Z1,patch1=VertX1Z0ToX0Z1@90
|
||||||
|
patchblock:id=dead_bush,patch0=VertX1Z0ToX0Z1,patch1=VertX1Z0ToX0Z1@90
|
||||||
|
patchblock:id=sugar_cane,patch0=VertX1Z0ToX0Z1,patch1=VertX1Z0ToX0Z1@90
|
||||||
|
|
||||||
# Seagrass
|
# Seagrass
|
||||||
# Tall seagrass
|
# Tall seagrass
|
||||||
@ -3435,3 +3441,116 @@ modellist:id=%dropper,state=facing:down,box=0.000000/0.000000/0.000000:16.000000
|
|||||||
[1.20-]modellist:id=%calibrated_sculk_sensor,state=facing:east/sculk_sensor_phase:inactive,box=0.000000/0.000000/0.000000:16.000000/8.000000/16.000000:n/2/0.000000/8.000000/16.000000/16.000000:w/2/0.000000/8.000000/16.000000/16.000000:s/0/0.000000/8.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/8.000000/16.000000/16.000000:u/3/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=-1.000000/8.000000/3.000000:7.000000/16.000000/3.000000/0.000000/45.000000/0.000000/3.000000/12.000000/3.000000:n/4/4.000000/8.000000/12.000000/16.000000:s/4/12.000000/8.000000/4.000000/16.000000:R/0/90/0,box=9.000000/8.000000/3.000000:17.000000/16.000000/3.000000/0.000000/-45.000000/0.000000/13.000000/12.000000/3.000000:n/4/12.000000/8.000000/4.000000/16.000000:s/4/4.000000/8.000000/12.000000/16.000000:R/0/90/0,box=9.000000/8.000000/13.000000:17.000000/16.000000/13.000000/0.000000/45.000000/0.000000/13.000000/12.000000/13.000000:n/4/12.000000/8.000000/4.000000/16.000000:s/4/4.000000/8.000000/12.000000/16.000000:R/0/90/0,box=-1.000000/8.000000/13.000000:7.000000/16.000000/13.000000/0.000000/-45.000000/0.000000/3.000000/12.000000/13.000000:n/4/4.000000/8.000000/12.000000/16.000000:s/4/12.000000/8.000000/4.000000/16.000000:R/0/90/0,box=8.000000/8.000000/0.000000/false:8.000000/20.000000/16.000000/0.000000/45.000000/0.000000/8.000000/9.000000/8.000000:w/5/0.000000/4.000000/16.000000/16.000000:e/5/0.000000/4.000000/16.000000/16.000000:R/0/90/0,box=0.000000/8.000000/8.000000/false:16.000000/20.000000/8.000000/0.000000/45.000000/0.000000/8.000000/9.000000/8.000000:n/5/0.000000/4.000000/16.000000/16.000000:s/5/0.000000/4.000000/16.000000/16.000000:R/0/90/0
|
[1.20-]modellist:id=%calibrated_sculk_sensor,state=facing:east/sculk_sensor_phase:inactive,box=0.000000/0.000000/0.000000:16.000000/8.000000/16.000000:n/2/0.000000/8.000000/16.000000/16.000000:w/2/0.000000/8.000000/16.000000/16.000000:s/0/0.000000/8.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/8.000000/16.000000/16.000000:u/3/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=-1.000000/8.000000/3.000000:7.000000/16.000000/3.000000/0.000000/45.000000/0.000000/3.000000/12.000000/3.000000:n/4/4.000000/8.000000/12.000000/16.000000:s/4/12.000000/8.000000/4.000000/16.000000:R/0/90/0,box=9.000000/8.000000/3.000000:17.000000/16.000000/3.000000/0.000000/-45.000000/0.000000/13.000000/12.000000/3.000000:n/4/12.000000/8.000000/4.000000/16.000000:s/4/4.000000/8.000000/12.000000/16.000000:R/0/90/0,box=9.000000/8.000000/13.000000:17.000000/16.000000/13.000000/0.000000/45.000000/0.000000/13.000000/12.000000/13.000000:n/4/12.000000/8.000000/4.000000/16.000000:s/4/4.000000/8.000000/12.000000/16.000000:R/0/90/0,box=-1.000000/8.000000/13.000000:7.000000/16.000000/13.000000/0.000000/-45.000000/0.000000/3.000000/12.000000/13.000000:n/4/4.000000/8.000000/12.000000/16.000000:s/4/12.000000/8.000000/4.000000/16.000000:R/0/90/0,box=8.000000/8.000000/0.000000/false:8.000000/20.000000/16.000000/0.000000/45.000000/0.000000/8.000000/9.000000/8.000000:w/5/0.000000/4.000000/16.000000/16.000000:e/5/0.000000/4.000000/16.000000/16.000000:R/0/90/0,box=0.000000/8.000000/8.000000/false:16.000000/20.000000/8.000000/0.000000/45.000000/0.000000/8.000000/9.000000/8.000000:n/5/0.000000/4.000000/16.000000/16.000000:s/5/0.000000/4.000000/16.000000/16.000000:R/0/90/0
|
||||||
[1.20-]modellist:id=%calibrated_sculk_sensor,state=facing:east/sculk_sensor_phase:active,box=0.000000/0.000000/0.000000:16.000000/8.000000/16.000000:n/2/0.000000/8.000000/16.000000/16.000000:w/2/0.000000/8.000000/16.000000/16.000000:s/0/0.000000/8.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/8.000000/16.000000/16.000000:u/3/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=-1.000000/8.000000/3.000000:7.000000/16.000000/3.000000/0.000000/45.000000/0.000000/3.000000/12.000000/3.000000:n/4/4.000000/8.000000/12.000000/16.000000:s/4/12.000000/8.000000/4.000000/16.000000:R/0/90/0,box=9.000000/8.000000/3.000000:17.000000/16.000000/3.000000/0.000000/-45.000000/0.000000/13.000000/12.000000/3.000000:n/4/12.000000/8.000000/4.000000/16.000000:s/4/4.000000/8.000000/12.000000/16.000000:R/0/90/0,box=9.000000/8.000000/13.000000:17.000000/16.000000/13.000000/0.000000/45.000000/0.000000/13.000000/12.000000/13.000000:n/4/12.000000/8.000000/4.000000/16.000000:s/4/4.000000/8.000000/12.000000/16.000000:R/0/90/0,box=-1.000000/8.000000/13.000000:7.000000/16.000000/13.000000/0.000000/-45.000000/0.000000/3.000000/12.000000/13.000000:n/4/4.000000/8.000000/12.000000/16.000000:s/4/12.000000/8.000000/4.000000/16.000000:R/0/90/0,box=8.000000/8.000000/0.000000/false:8.000000/20.000000/16.000000/0.000000/45.000000/0.000000/8.000000/9.000000/8.000000:w/5/0.000000/4.000000/16.000000/16.000000:e/5/0.000000/4.000000/16.000000/16.000000:R/0/90/0,box=0.000000/8.000000/8.000000/false:16.000000/20.000000/8.000000/0.000000/45.000000/0.000000/8.000000/9.000000/8.000000:n/5/0.000000/4.000000/16.000000/16.000000:s/5/0.000000/4.000000/16.000000/16.000000:R/0/90/0
|
[1.20-]modellist:id=%calibrated_sculk_sensor,state=facing:east/sculk_sensor_phase:active,box=0.000000/0.000000/0.000000:16.000000/8.000000/16.000000:n/2/0.000000/8.000000/16.000000/16.000000:w/2/0.000000/8.000000/16.000000/16.000000:s/0/0.000000/8.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/8.000000/16.000000/16.000000:u/3/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=-1.000000/8.000000/3.000000:7.000000/16.000000/3.000000/0.000000/45.000000/0.000000/3.000000/12.000000/3.000000:n/4/4.000000/8.000000/12.000000/16.000000:s/4/12.000000/8.000000/4.000000/16.000000:R/0/90/0,box=9.000000/8.000000/3.000000:17.000000/16.000000/3.000000/0.000000/-45.000000/0.000000/13.000000/12.000000/3.000000:n/4/12.000000/8.000000/4.000000/16.000000:s/4/4.000000/8.000000/12.000000/16.000000:R/0/90/0,box=9.000000/8.000000/13.000000:17.000000/16.000000/13.000000/0.000000/45.000000/0.000000/13.000000/12.000000/13.000000:n/4/12.000000/8.000000/4.000000/16.000000:s/4/4.000000/8.000000/12.000000/16.000000:R/0/90/0,box=-1.000000/8.000000/13.000000:7.000000/16.000000/13.000000/0.000000/-45.000000/0.000000/3.000000/12.000000/13.000000:n/4/4.000000/8.000000/12.000000/16.000000:s/4/12.000000/8.000000/4.000000/16.000000:R/0/90/0,box=8.000000/8.000000/0.000000/false:8.000000/20.000000/16.000000/0.000000/45.000000/0.000000/8.000000/9.000000/8.000000:w/5/0.000000/4.000000/16.000000/16.000000:e/5/0.000000/4.000000/16.000000/16.000000:R/0/90/0,box=0.000000/8.000000/8.000000/false:16.000000/20.000000/8.000000/0.000000/45.000000/0.000000/8.000000/9.000000/8.000000:n/5/0.000000/4.000000/16.000000/16.000000:s/5/0.000000/4.000000/16.000000/16.000000:R/0/90/0
|
||||||
[1.20-]modellist:id=%calibrated_sculk_sensor,state=facing:east/sculk_sensor_phase:cooldown,box=0.000000/0.000000/0.000000:16.000000/8.000000/16.000000:n/2/0.000000/8.000000/16.000000/16.000000:w/2/0.000000/8.000000/16.000000/16.000000:s/0/0.000000/8.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/8.000000/16.000000/16.000000:u/3/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=-1.000000/8.000000/3.000000:7.000000/16.000000/3.000000/0.000000/45.000000/0.000000/3.000000/12.000000/3.000000:n/4/4.000000/8.000000/12.000000/16.000000:s/4/12.000000/8.000000/4.000000/16.000000:R/0/90/0,box=9.000000/8.000000/3.000000:17.000000/16.000000/3.000000/0.000000/-45.000000/0.000000/13.000000/12.000000/3.000000:n/4/12.000000/8.000000/4.000000/16.000000:s/4/4.000000/8.000000/12.000000/16.000000:R/0/90/0,box=9.000000/8.000000/13.000000:17.000000/16.000000/13.000000/0.000000/45.000000/0.000000/13.000000/12.000000/13.000000:n/4/12.000000/8.000000/4.000000/16.000000:s/4/4.000000/8.000000/12.000000/16.000000:R/0/90/0,box=-1.000000/8.000000/13.000000:7.000000/16.000000/13.000000/0.000000/-45.000000/0.000000/3.000000/12.000000/13.000000:n/4/4.000000/8.000000/12.000000/16.000000:s/4/12.000000/8.000000/4.000000/16.000000:R/0/90/0,box=8.000000/8.000000/0.000000/false:8.000000/20.000000/16.000000/0.000000/45.000000/0.000000/8.000000/9.000000/8.000000:w/5/0.000000/4.000000/16.000000/16.000000:e/5/0.000000/4.000000/16.000000/16.000000:R/0/90/0,box=0.000000/8.000000/8.000000/false:16.000000/20.000000/8.000000/0.000000/45.000000/0.000000/8.000000/9.000000/8.000000:n/5/0.000000/4.000000/16.000000/16.000000:s/5/0.000000/4.000000/16.000000/16.000000:R/0/90/0
|
[1.20-]modellist:id=%calibrated_sculk_sensor,state=facing:east/sculk_sensor_phase:cooldown,box=0.000000/0.000000/0.000000:16.000000/8.000000/16.000000:n/2/0.000000/8.000000/16.000000/16.000000:w/2/0.000000/8.000000/16.000000/16.000000:s/0/0.000000/8.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/8.000000/16.000000/16.000000:u/3/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=-1.000000/8.000000/3.000000:7.000000/16.000000/3.000000/0.000000/45.000000/0.000000/3.000000/12.000000/3.000000:n/4/4.000000/8.000000/12.000000/16.000000:s/4/12.000000/8.000000/4.000000/16.000000:R/0/90/0,box=9.000000/8.000000/3.000000:17.000000/16.000000/3.000000/0.000000/-45.000000/0.000000/13.000000/12.000000/3.000000:n/4/12.000000/8.000000/4.000000/16.000000:s/4/4.000000/8.000000/12.000000/16.000000:R/0/90/0,box=9.000000/8.000000/13.000000:17.000000/16.000000/13.000000/0.000000/45.000000/0.000000/13.000000/12.000000/13.000000:n/4/12.000000/8.000000/4.000000/16.000000:s/4/4.000000/8.000000/12.000000/16.000000:R/0/90/0,box=-1.000000/8.000000/13.000000:7.000000/16.000000/13.000000/0.000000/-45.000000/0.000000/3.000000/12.000000/13.000000:n/4/4.000000/8.000000/12.000000/16.000000:s/4/12.000000/8.000000/4.000000/16.000000:R/0/90/0,box=8.000000/8.000000/0.000000/false:8.000000/20.000000/16.000000/0.000000/45.000000/0.000000/8.000000/9.000000/8.000000:w/5/0.000000/4.000000/16.000000/16.000000:e/5/0.000000/4.000000/16.000000/16.000000:R/0/90/0,box=0.000000/8.000000/8.000000/false:16.000000/20.000000/8.000000/0.000000/45.000000/0.000000/8.000000/9.000000/8.000000:n/5/0.000000/4.000000/16.000000/16.000000:s/5/0.000000/4.000000/16.000000/16.000000:R/0/90/0
|
||||||
|
|
||||||
|
# 1.20.3
|
||||||
|
[1.20.3-]modellist:id=%tuff_slab,state=type:top,box=0.000000/8.000000/0.000000:16.000000/16.000000/16.000000:n/0/0.000000/0.000000/16.000000/8.000000:w/0/0.000000/0.000000/16.000000/8.000000:e/0/0.000000/0.000000/16.000000/8.000000:s/0/0.000000/0.000000/16.000000/8.000000:u/0/0.000000/0.000000/16.000000/16.000000:d/0/0.000000/0.000000/16.000000/16.000000
|
||||||
|
[1.20.3-]modellist:id=%tuff_slab,state=type:bottom,box=0.000000/0.000000/0.000000:16.000000/8.000000/16.000000:n/0/0.000000/8.000000/16.000000/16.000000:w/0/0.000000/8.000000/16.000000/16.000000:e/0/0.000000/8.000000/16.000000/16.000000:s/0/0.000000/8.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:d/0/0.000000/0.000000/16.000000/16.000000
|
||||||
|
[1.20.3-]customblock:id=%tuff_stairs,class=org.dynmap.hdmap.renderer.StairStateRenderer
|
||||||
|
[1.20.3-]customblock:id=%tuff_wall,class=org.dynmap.hdmap.renderer.FenceWallBlockStateRenderer,type=tallwall
|
||||||
|
[1.20.3-]modellist:id=%polished_tuff_slab,state=type:top,box=0.000000/8.000000/0.000000:16.000000/16.000000/16.000000:n/0/0.000000/0.000000/16.000000/8.000000:w/0/0.000000/0.000000/16.000000/8.000000:e/0/0.000000/0.000000/16.000000/8.000000:s/0/0.000000/0.000000/16.000000/8.000000:u/0/0.000000/0.000000/16.000000/16.000000:d/0/0.000000/0.000000/16.000000/16.000000
|
||||||
|
[1.20.3-]modellist:id=%polished_tuff_slab,state=type:bottom,box=0.000000/0.000000/0.000000:16.000000/8.000000/16.000000:n/0/0.000000/8.000000/16.000000/16.000000:w/0/0.000000/8.000000/16.000000/16.000000:e/0/0.000000/8.000000/16.000000/16.000000:s/0/0.000000/8.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:d/0/0.000000/0.000000/16.000000/16.000000
|
||||||
|
[1.20.3-]customblock:id=%polished_tuff_stairs,class=org.dynmap.hdmap.renderer.StairStateRenderer
|
||||||
|
[1.20.3-]customblock:id=%polished_tuff_wall,class=org.dynmap.hdmap.renderer.FenceWallBlockStateRenderer,type=tallwall
|
||||||
|
[1.20.3-]customblock:id=%polished_tuff_stairs,class=org.dynmap.hdmap.renderer.StairStateRenderer
|
||||||
|
[1.20.3-]customblock:id=%polished_tuff_wall,class=org.dynmap.hdmap.renderer.FenceWallBlockStateRenderer,type=tallwall
|
||||||
|
[1.20.3-]customblock:id=%copper_door,id=%exposed_copper_door,id=%oxidized_copper_door,id=%weathered_copper_door,class=org.dynmap.hdmap.renderer.DoorStateRenderer
|
||||||
|
[1.20.3-]customblock:id=%waxed_copper_door,id=%waxed_exposed_copper_door,id=%waxed_oxidized_copper_door,id=%waxed_weathered_copper_door,class=org.dynmap.hdmap.renderer.DoorStateRenderer
|
||||||
|
|
||||||
|
[1.20.3-]boxblock:id=%copper_trapdoor,id=%waxed_copper_trapdoor,id=%exposed_copper_trapdoor,id=%waxed_exposed_copper_trapdoor,id=%oxidized_copper_trapdoor,id=%waxed_oxidized_copper_trapdoor,id=%weathered_copper_trapdoor,id=%waxed_weathered_copper_trapdoor,data=12-15,data=28-31,data=44-47,data=60-63,ymax=0.1875
|
||||||
|
[1.20.3-]boxblock:id=%copper_trapdoor,id=%waxed_copper_trapdoor,id=%exposed_copper_trapdoor,id=%waxed_exposed_copper_trapdoor,id=%oxidized_copper_trapdoor,id=%waxed_oxidized_copper_trapdoor,id=%weathered_copper_trapdoor,id=%waxed_weathered_copper_trapdoor,data=32-35,data=40-44,xmin=0.8125
|
||||||
|
[1.20.3-]boxblock:id=%copper_trapdoor,id=%waxed_copper_trapdoor,id=%exposed_copper_trapdoor,id=%waxed_exposed_copper_trapdoor,id=%oxidized_copper_trapdoor,id=%waxed_oxidized_copper_trapdoor,id=%weathered_copper_trapdoor,id=%waxed_weathered_copper_trapdoor,data=48-51,data=56-59,xmax=0.1875
|
||||||
|
[1.20.3-]boxblock:id=%copper_trapdoor,id=%waxed_copper_trapdoor,id=%exposed_copper_trapdoor,id=%waxed_exposed_copper_trapdoor,id=%oxidized_copper_trapdoor,id=%waxed_oxidized_copper_trapdoor,id=%weathered_copper_trapdoor,id=%waxed_weathered_copper_trapdoor,data=16-19,data=24-27,zmax=0.1875
|
||||||
|
[1.20.3-]boxblock:id=%copper_trapdoor,id=%waxed_copper_trapdoor,id=%exposed_copper_trapdoor,id=%waxed_exposed_copper_trapdoor,id=%oxidized_copper_trapdoor,id=%waxed_oxidized_copper_trapdoor,id=%weathered_copper_trapdoor,id=%waxed_weathered_copper_trapdoor,data=0-3,data=8-11,zmin=0.8125
|
||||||
|
[1.20.3-]boxblock:id=%copper_trapdoor,id=%waxed_copper_trapdoor,id=%exposed_copper_trapdoor,id=%waxed_exposed_copper_trapdoor,id=%oxidized_copper_trapdoor,id=%waxed_oxidized_copper_trapdoor,id=%weathered_copper_trapdoor,id=%waxed_weathered_copper_trapdoor,data=4-7,data=20-23,data=36-39,data=52-55,ymin=0.8125
|
||||||
|
|
||||||
|
# 1.20.5
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:north/ominous:true/vault_state:inactive,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:north/ominous:true/vault_state:active,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:north/ominous:true/vault_state:unlocking,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:north/ominous:true/vault_state:ejecting,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:north/ominous:false/vault_state:inactive,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:north/ominous:false/vault_state:active,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:north/ominous:false/vault_state:unlocking,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:north/ominous:false/vault_state:ejecting,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:south/ominous:true/vault_state:inactive,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/180/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/180/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:south/ominous:true/vault_state:active,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/180/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/180/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:south/ominous:true/vault_state:unlocking,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/180/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/180/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:south/ominous:true/vault_state:ejecting,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/180/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/180/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:south/ominous:false/vault_state:inactive,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/180/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/180/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:south/ominous:false/vault_state:active,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/180/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/180/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:south/ominous:false/vault_state:unlocking,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/180/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/180/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:south/ominous:false/vault_state:ejecting,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/180/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/180/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:west/ominous:true/vault_state:inactive,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/270/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/270/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:west/ominous:true/vault_state:active,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/270/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/270/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:west/ominous:true/vault_state:unlocking,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/270/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/270/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:west/ominous:true/vault_state:ejecting,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/270/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/270/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:west/ominous:false/vault_state:inactive,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/270/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/270/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:west/ominous:false/vault_state:active,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/270/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/270/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:west/ominous:false/vault_state:unlocking,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/270/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/270/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:west/ominous:false/vault_state:ejecting,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/270/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/270/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:east/ominous:true/vault_state:inactive,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/90/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:east/ominous:true/vault_state:active,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/90/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:east/ominous:true/vault_state:unlocking,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/90/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:east/ominous:true/vault_state:ejecting,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/90/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:east/ominous:false/vault_state:inactive,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/90/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:east/ominous:false/vault_state:active,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/90/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:east/ominous:false/vault_state:unlocking,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/90/0
|
||||||
|
[1.20.5-]modellist:id=%vault,state=facing:east/ominous:false/vault_state:ejecting,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:e/0/0.000000/0.000000/16.000000/16.000000:u/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/0.000000/0.000000/16.000000/16.000000:n/3/0.000000/0.000000/16.000000/16.000000:w/0/0.000000/0.000000/16.000000/16.000000:R/0/90/0,box=15.998000/3.002000/0.002000:0.002000/15.998000/15.998000:e/0/16.000000/0.000000/0.000000/13.000000:u/2/16.000000/0.000000/0.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:s/0/16.000000/0.000000/0.000000/13.000000:n/3/16.000000/0.000000/0.000000/13.000000:w/0/16.000000/0.000000/0.000000/13.000000:R/0/90/0
|
||||||
|
[1.20.5-]modellist:id=%heavy_core,box=4.000000/0.000000/4.000000:12.000000/8.000000/12.000000:e/0/0.000000/8.000000/8.000000/16.000000:u/0/0.000000/0.000000/8.000000/8.000000:d/0/8.000000/0.000000/16.000000/8.000000:s/0/0.000000/8.000000/8.000000/16.000000:n/0/0.000000/8.000000/8.000000/16.000000:w/0/0.000000/8.000000/8.000000/16.000000
|
||||||
|
# 1.21
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:down_east/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/90/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:down_east/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/90/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:down_north/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/0/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:down_north/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/0/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:down_south/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/180/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:down_south/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/180/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:down_west/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/270/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:down_west/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/270/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:up_east/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/270/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:up_east/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/270/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:up_north/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/180/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:up_north/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/180/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:up_south/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/0/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:up_south/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/0/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:up_west/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/90/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:up_west/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/90/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:west_up/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/0/270/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:west_up/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/0/270/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:east_up/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/0/90/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:east_up/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/0/90/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:south_up/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/0/180/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:true/orientation:south_up/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/0/180/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:down_east/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/90/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:down_east/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/90/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:down_north/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/0/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:down_north/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/0/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:down_south/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/180/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:down_south/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/180/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:down_west/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/270/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:down_west/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/90/270/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:up_east/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/270/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:up_east/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/270/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:up_north/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/180/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:up_north/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/180/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:up_south/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/0/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:up_south/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/0/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:up_west/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/90/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:up_west/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/270/90/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:west_up/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/0/270/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:west_up/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/0/270/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:east_up/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/0/90/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:east_up/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/0/90/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:south_up/triggered:true,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/0/180/0
|
||||||
|
[1.21-]modellist:id=%crafter,state=crafting:false/orientation:south_up/triggered:false,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u180/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/3/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/5/0.000000/0.000000/16.000000/16.000000:w/4/0.000000/0.000000/16.000000/16.000000:R/0/180/0
|
||||||
|
[1.21-]modellist:id=%trial_spawner,state=ominous:true/trial_spawner_state:inactive,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/2/0.000000/0.000000/16.000000/16.000000:w/2/0.000000/0.000000/16.000000/16.000000,box=15.998000/0.002000/0.002000:0.002000/15.998000/15.998000:u/0/16.000000/0.000000/0.000000/16.000000:e/2/16.000000/0.000000/0.000000/16.000000:s/2/16.000000/0.000000/0.000000/16.000000:d/1/16.000000/0.000000/0.000000/16.000000:n/2/16.000000/0.000000/0.000000/16.000000:w/2/16.000000/0.000000/0.000000/16.000000
|
||||||
|
[1.21-]modellist:id=%trial_spawner,state=ominous:true/trial_spawner_state:waiting_for_players,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/2/0.000000/0.000000/16.000000/16.000000:w/2/0.000000/0.000000/16.000000/16.000000,box=15.998000/0.002000/0.002000:0.002000/15.998000/15.998000:u/0/16.000000/0.000000/0.000000/16.000000:e/2/16.000000/0.000000/0.000000/16.000000:s/2/16.000000/0.000000/0.000000/16.000000:d/1/16.000000/0.000000/0.000000/16.000000:n/2/16.000000/0.000000/0.000000/16.000000:w/2/16.000000/0.000000/0.000000/16.000000
|
||||||
|
[1.21-]modellist:id=%trial_spawner,state=ominous:true/trial_spawner_state:active,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/2/0.000000/0.000000/16.000000/16.000000:w/2/0.000000/0.000000/16.000000/16.000000,box=15.998000/0.002000/0.002000:0.002000/15.998000/15.998000:u/0/16.000000/0.000000/0.000000/16.000000:e/2/16.000000/0.000000/0.000000/16.000000:s/2/16.000000/0.000000/0.000000/16.000000:d/1/16.000000/0.000000/0.000000/16.000000:n/2/16.000000/0.000000/0.000000/16.000000:w/2/16.000000/0.000000/0.000000/16.000000
|
||||||
|
[1.21-]modellist:id=%trial_spawner,state=ominous:true/trial_spawner_state:waiting_for_reward_ejection,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/2/0.000000/0.000000/16.000000/16.000000:w/2/0.000000/0.000000/16.000000/16.000000,box=15.998000/0.002000/0.002000:0.002000/15.998000/15.998000:u/0/16.000000/0.000000/0.000000/16.000000:e/2/16.000000/0.000000/0.000000/16.000000:s/2/16.000000/0.000000/0.000000/16.000000:d/1/16.000000/0.000000/0.000000/16.000000:n/2/16.000000/0.000000/0.000000/16.000000:w/2/16.000000/0.000000/0.000000/16.000000
|
||||||
|
[1.21-]modellist:id=%trial_spawner,state=ominous:true/trial_spawner_state:ejecting_reward,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/2/0.000000/0.000000/16.000000/16.000000:w/2/0.000000/0.000000/16.000000/16.000000,box=15.998000/0.002000/0.002000:0.002000/15.998000/15.998000:u/0/16.000000/0.000000/0.000000/16.000000:e/2/16.000000/0.000000/0.000000/16.000000:s/2/16.000000/0.000000/0.000000/16.000000:d/1/16.000000/0.000000/0.000000/16.000000:n/2/16.000000/0.000000/0.000000/16.000000:w/2/16.000000/0.000000/0.000000/16.000000
|
||||||
|
[1.21-]modellist:id=%trial_spawner,state=ominous:true/trial_spawner_state:cooldown,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/2/0.000000/0.000000/16.000000/16.000000:w/2/0.000000/0.000000/16.000000/16.000000,box=15.998000/0.002000/0.002000:0.002000/15.998000/15.998000:u/0/16.000000/0.000000/0.000000/16.000000:e/2/16.000000/0.000000/0.000000/16.000000:s/2/16.000000/0.000000/0.000000/16.000000:d/1/16.000000/0.000000/0.000000/16.000000:n/2/16.000000/0.000000/0.000000/16.000000:w/2/16.000000/0.000000/0.000000/16.000000
|
||||||
|
[1.21-]modellist:id=%trial_spawner,state=ominous:false/trial_spawner_state:inactive,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/2/0.000000/0.000000/16.000000/16.000000:w/2/0.000000/0.000000/16.000000/16.000000,box=15.998000/0.002000/0.002000:0.002000/15.998000/15.998000:u/0/16.000000/0.000000/0.000000/16.000000:e/2/16.000000/0.000000/0.000000/16.000000:s/2/16.000000/0.000000/0.000000/16.000000:d/1/16.000000/0.000000/0.000000/16.000000:n/2/16.000000/0.000000/0.000000/16.000000:w/2/16.000000/0.000000/0.000000/16.000000
|
||||||
|
[1.21-]modellist:id=%trial_spawner,state=ominous:false/trial_spawner_state:waiting_for_players,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/2/0.000000/0.000000/16.000000/16.000000:w/2/0.000000/0.000000/16.000000/16.000000,box=15.998000/0.002000/0.002000:0.002000/15.998000/15.998000:u/0/16.000000/0.000000/0.000000/16.000000:e/2/16.000000/0.000000/0.000000/16.000000:s/2/16.000000/0.000000/0.000000/16.000000:d/1/16.000000/0.000000/0.000000/16.000000:n/2/16.000000/0.000000/0.000000/16.000000:w/2/16.000000/0.000000/0.000000/16.000000
|
||||||
|
[1.21-]modellist:id=%trial_spawner,state=ominous:false/trial_spawner_state:active,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/2/0.000000/0.000000/16.000000/16.000000:w/2/0.000000/0.000000/16.000000/16.000000,box=15.998000/0.002000/0.002000:0.002000/15.998000/15.998000:u/0/16.000000/0.000000/0.000000/16.000000:e/2/16.000000/0.000000/0.000000/16.000000:s/2/16.000000/0.000000/0.000000/16.000000:d/1/16.000000/0.000000/0.000000/16.000000:n/2/16.000000/0.000000/0.000000/16.000000:w/2/16.000000/0.000000/0.000000/16.000000
|
||||||
|
[1.21-]modellist:id=%trial_spawner,state=ominous:false/trial_spawner_state:waiting_for_reward_ejection,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/2/0.000000/0.000000/16.000000/16.000000:w/2/0.000000/0.000000/16.000000/16.000000,box=15.998000/0.002000/0.002000:0.002000/15.998000/15.998000:u/0/16.000000/0.000000/0.000000/16.000000:e/2/16.000000/0.000000/0.000000/16.000000:s/2/16.000000/0.000000/0.000000/16.000000:d/1/16.000000/0.000000/0.000000/16.000000:n/2/16.000000/0.000000/0.000000/16.000000:w/2/16.000000/0.000000/0.000000/16.000000
|
||||||
|
[1.21-]modellist:id=%trial_spawner,state=ominous:false/trial_spawner_state:ejecting_reward,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/2/0.000000/0.000000/16.000000/16.000000:w/2/0.000000/0.000000/16.000000/16.000000,box=15.998000/0.002000/0.002000:0.002000/15.998000/15.998000:u/0/16.000000/0.000000/0.000000/16.000000:e/2/16.000000/0.000000/0.000000/16.000000:s/2/16.000000/0.000000/0.000000/16.000000:d/1/16.000000/0.000000/0.000000/16.000000:n/2/16.000000/0.000000/0.000000/16.000000:w/2/16.000000/0.000000/0.000000/16.000000
|
||||||
|
[1.21-]modellist:id=%trial_spawner,state=ominous:false/trial_spawner_state:cooldown,box=0.000000/0.000000/0.000000:16.000000/16.000000/16.000000:u/0/0.000000/0.000000/16.000000/16.000000:e/2/0.000000/0.000000/16.000000/16.000000:s/2/0.000000/0.000000/16.000000/16.000000:d/1/0.000000/0.000000/16.000000/16.000000:n/2/0.000000/0.000000/16.000000/16.000000:w/2/0.000000/0.000000/16.000000/16.000000,box=15.998000/0.002000/0.002000:0.002000/15.998000/15.998000:u/0/16.000000/0.000000/0.000000/16.000000:e/2/16.000000/0.000000/0.000000/16.000000:s/2/16.000000/0.000000/0.000000/16.000000:d/1/16.000000/0.000000/0.000000/16.000000:n/2/16.000000/0.000000/0.000000/16.000000:w/2/16.000000/0.000000/0.000000/16.000000
|
||||||
|
@ -814,7 +814,8 @@ block:id=detector_rail,state=powered:false,patch0=0:detector_rail,transparency=T
|
|||||||
# Web
|
# Web
|
||||||
block:id=cobweb,patch0-1=0:cobweb,transparency=TRANSPARENT
|
block:id=cobweb,patch0-1=0:cobweb,transparency=TRANSPARENT
|
||||||
# Grass
|
# Grass
|
||||||
block:id=grass,patch0-1=1000:grass,transparency=TRANSPARENT
|
[-1.20.2]block:id=grass,patch0-1=1000:grass,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=short_grass,patch0-1=1000:grass,transparency=TRANSPARENT
|
||||||
# Fern
|
# Fern
|
||||||
block:id=fern,patch0-1=1000:fern,transparency=TRANSPARENT
|
block:id=fern,patch0-1=1000:fern,transparency=TRANSPARENT
|
||||||
# Dead shrub
|
# Dead shrub
|
||||||
@ -4513,3 +4514,276 @@ block:id=%melon_stem,patch0=0:melon_stem,blockcolor=foliagebiome,transparency=TR
|
|||||||
[1.20-]block:id=%calibrated_sculk_sensor,state=facing:east/sculk_sensor_phase:inactive,patch0=0:calibrated_sculk_sensor_input_side,patch1=0:sculk_sensor_bottom,patch2=0:sculk_sensor_side,patch3=0:calibrated_sculk_sensor_top,patch4=0:sculk_sensor_tendril_inactive,patch5=0:calibrated_sculk_sensor_amethyst,transparency=SEMITRANSPARENT,stdrot=true
|
[1.20-]block:id=%calibrated_sculk_sensor,state=facing:east/sculk_sensor_phase:inactive,patch0=0:calibrated_sculk_sensor_input_side,patch1=0:sculk_sensor_bottom,patch2=0:sculk_sensor_side,patch3=0:calibrated_sculk_sensor_top,patch4=0:sculk_sensor_tendril_inactive,patch5=0:calibrated_sculk_sensor_amethyst,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
[1.20-]block:id=%calibrated_sculk_sensor,state=facing:east/sculk_sensor_phase:active,patch0=0:calibrated_sculk_sensor_input_side,patch1=0:sculk_sensor_bottom,patch2=0:sculk_sensor_side,patch3=0:calibrated_sculk_sensor_top,patch4=0:sculk_sensor_tendril_active,patch5=0:calibrated_sculk_sensor_amethyst,transparency=SEMITRANSPARENT,stdrot=true
|
[1.20-]block:id=%calibrated_sculk_sensor,state=facing:east/sculk_sensor_phase:active,patch0=0:calibrated_sculk_sensor_input_side,patch1=0:sculk_sensor_bottom,patch2=0:sculk_sensor_side,patch3=0:calibrated_sculk_sensor_top,patch4=0:sculk_sensor_tendril_active,patch5=0:calibrated_sculk_sensor_amethyst,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
[1.20-]block:id=%calibrated_sculk_sensor,state=facing:east/sculk_sensor_phase:cooldown,patch0=0:calibrated_sculk_sensor_input_side,patch1=0:sculk_sensor_bottom,patch2=0:sculk_sensor_side,patch3=0:calibrated_sculk_sensor_top,patch4=0:sculk_sensor_tendril_active,patch5=0:calibrated_sculk_sensor_amethyst,transparency=SEMITRANSPARENT,stdrot=true
|
[1.20-]block:id=%calibrated_sculk_sensor,state=facing:east/sculk_sensor_phase:cooldown,patch0=0:calibrated_sculk_sensor_input_side,patch1=0:sculk_sensor_bottom,patch2=0:sculk_sensor_side,patch3=0:calibrated_sculk_sensor_top,patch4=0:sculk_sensor_tendril_active,patch5=0:calibrated_sculk_sensor_amethyst,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
|
||||||
|
# 1.20.3
|
||||||
|
[1.20.3-]texture:id=suspicious_gravel_0,filename=assets/minecraft/textures/block/suspicious_gravel_0.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=suspicious_gravel_1,filename=assets/minecraft/textures/block/suspicious_gravel_1.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=suspicious_gravel_2,filename=assets/minecraft/textures/block/suspicious_gravel_2.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=suspicious_gravel_3,filename=assets/minecraft/textures/block/suspicious_gravel_3.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=tuff,filename=assets/minecraft/textures/block/tuff.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=polished_tuff,filename=assets/minecraft/textures/block/polished_tuff.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=chiseled_tuff,filename=assets/minecraft/textures/block/chiseled_tuff.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=chiseled_tuff_top,filename=assets/minecraft/textures/block/chiseled_tuff_top.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=tuff_bricks,filename=assets/minecraft/textures/block/tuff_bricks.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=chiseled_tuff_bricks,filename=assets/minecraft/textures/block/chiseled_tuff_bricks.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=chiseled_tuff_bricks_top,filename=assets/minecraft/textures/block/chiseled_tuff_bricks_top.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=oxidized_chiseled_copper,filename=assets/minecraft/textures/block/oxidized_chiseled_copper.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=weathered_chiseled_copper,filename=assets/minecraft/textures/block/weathered_chiseled_copper.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=exposed_chiseled_copper,filename=assets/minecraft/textures/block/exposed_chiseled_copper.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=chiseled_copper,filename=assets/minecraft/textures/block/chiseled_copper.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=copper_door_top,filename=assets/minecraft/textures/block/copper_door_top.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=copper_door_bottom,filename=assets/minecraft/textures/block/copper_door_bottom.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=exposed_copper_door_top,filename=assets/minecraft/textures/block/exposed_copper_door_top.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=exposed_copper_door_bottom,filename=assets/minecraft/textures/block/exposed_copper_door_bottom.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=oxidized_copper_door_top,filename=assets/minecraft/textures/block/oxidized_copper_door_top.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=oxidized_copper_door_bottom,filename=assets/minecraft/textures/block/oxidized_copper_door_bottom.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=weathered_copper_door_top,filename=assets/minecraft/textures/block/weathered_copper_door_top.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=weathered_copper_door_bottom,filename=assets/minecraft/textures/block/weathered_copper_door_bottom.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=copper_trapdoor,filename=assets/minecraft/textures/block/copper_trapdoor.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=exposed_copper_trapdoor,filename=assets/minecraft/textures/block/exposed_copper_trapdoor.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=oxidized_copper_trapdoor,filename=assets/minecraft/textures/block/oxidized_copper_trapdoor.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=weathered_copper_trapdoor,filename=assets/minecraft/textures/block/weathered_copper_trapdoor.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=copper_grate,filename=assets/minecraft/textures/block/copper_grate.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=exposed_copper_grate,filename=assets/minecraft/textures/block/exposed_copper_grate.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=weathered_copper_grate,filename=assets/minecraft/textures/block/weathered_copper_grate.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]texture:id=oxidized_copper_grate,filename=assets/minecraft/textures/block/oxidized_copper_grate.png,xcount=1,ycount=1
|
||||||
|
[1.20.3-]block:id=%suspicious_gravel,state=dusted:0,patch0=0:suspicious_gravel_0,patch1=0:suspicious_gravel_0,patch2=0:suspicious_gravel_0,patch3=0:suspicious_gravel_0,patch4=0:suspicious_gravel_0,patch5=0:suspicious_gravel_0,stdrot=true
|
||||||
|
[1.20.3-]block:id=%suspicious_gravel,state=dusted:1,patch0=0:suspicious_gravel_1,patch1=0:suspicious_gravel_1,patch2=0:suspicious_gravel_1,patch3=0:suspicious_gravel_1,patch4=0:suspicious_gravel_1,patch5=0:suspicious_gravel_1,stdrot=true
|
||||||
|
[1.20.3-]block:id=%suspicious_gravel,state=dusted:2,patch0=0:suspicious_gravel_2,patch1=0:suspicious_gravel_2,patch2=0:suspicious_gravel_2,patch3=0:suspicious_gravel_2,patch4=0:suspicious_gravel_2,patch5=0:suspicious_gravel_2,stdrot=true
|
||||||
|
[1.20.3-]block:id=%suspicious_gravel,state=dusted:3,patch0=0:suspicious_gravel_3,patch1=0:suspicious_gravel_3,patch2=0:suspicious_gravel_3,patch3=0:suspicious_gravel_3,patch4=0:suspicious_gravel_3,patch5=0:suspicious_gravel_3,stdrot=true
|
||||||
|
[1.20.3-]block:id=%tuff,patch0-5=0:tuff,stdrot=true
|
||||||
|
[1.20.3-]block:id=%tuff_slab,state=type:top,patch0=0:tuff,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%tuff_slab,state=type:bottom,patch0=0:tuff,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%tuff_slab,state=type:double,patch0-5=0:tuff,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%tuff_stairs,patch0-2=0:tuff,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%tuff_wall,patch0-2=0:tuff,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%polished_tuff,patch0-5=0:polished_tuff,stdrot=true
|
||||||
|
[1.20.3-]block:id=%polished_tuff_slab,state=type:top,patch0=0:polished_tuff,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%polished_tuff_slab,state=type:bottom,patch0=0:polished_tuff,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%polished_tuff_slab,state=type:double,patch0-5=0:polished_tuff,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%polished_tuff_stairs,patch0-2=0:polished_tuff,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%polished_tuff_wall,patch0-2=0:polished_tuff,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%chiseled_tuff,patch0=0:chiseled_tuff,patch1=0:chiseled_tuff_top,patch2=0:chiseled_tuff,patch3=0:chiseled_tuff,patch4=0:chiseled_tuff_top,patch5=0:chiseled_tuff,stdrot=true
|
||||||
|
[1.20.3-]block:id=%tuff_bricks,patch0-5=0:tuff_bricks,stdrot=true
|
||||||
|
[1.20.3-]block:id=%tuff_brick_slab,state=type:top,patch0=0:tuff_bricks,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%tuff_brick_slab,state=type:bottom,patch0=0:tuff_bricks,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%tuff_brick_slab,state=type:double,patch0-5=0:tuff_bricks,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%tuff_brick_stairs,patch0-2=0:tuff_bricks,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%tuff_brick_wall,patch0-2=0:tuff_bricks,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%chiseled_tuff_bricks,patch0-5=0:chiseled_tuff_bricks,stdrot=true
|
||||||
|
[1.20.3-]block:id=%oxidized_chiseled_copper,patch0-5=0:oxidized_chiseled_copper,stdrot=true
|
||||||
|
[1.20.3-]block:id=%weathered_chiseled_copper,patch0-5=0:weathered_chiseled_copper,stdrot=true
|
||||||
|
[1.20.3-]block:id=%exposed_chiseled_copper,patch0-5=0:exposed_chiseled_copper,stdrot=true
|
||||||
|
[1.20.3-]block:id=%chiseled_copper,patch0-5=0:chiseled_copper,stdrot=true
|
||||||
|
[1.20.3-]block:id=%waxed_oxidized_chiseled_copper,patch0-5=0:oxidized_chiseled_copper,stdrot=true
|
||||||
|
[1.20.3-]block:id=%waxed_weathered_chiseled_copper,patch0-5=0:weathered_chiseled_copper,stdrot=true
|
||||||
|
[1.20.3-]block:id=%waxed_exposed_chiseled_copper,patch0-5=0:exposed_chiseled_copper,stdrot=true
|
||||||
|
[1.20.3-]block:id=%waxed_chiseled_copper,patch0-5=0:chiseled_copper,stdrot=true
|
||||||
|
[1.20.3-]block:id=%copper_door,data=*,patch0=0:copper_door_top,patch1=0:copper_door_bottom,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=%exposed_copper_door,data=*,patch0=0:exposed_copper_door_top,patch1=0:exposed_copper_door_bottom,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=%oxidized_copper_door,data=*,patch0=0:oxidized_copper_door_top,patch1=0:oxidized_copper_door_bottom,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=%weathered_copper_door,data=*,patch0=0:weathered_copper_door_top,patch1=0:weathered_copper_door_bottom,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=%waxed_copper_door,data=*,patch0=0:copper_door_top,patch1=0:copper_door_bottom,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=%waxed_exposed_copper_door,data=*,patch0=0:exposed_copper_door_top,patch1=0:exposed_copper_door_bottom,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=%waxed_oxidized_copper_door,data=*,patch0=0:oxidized_copper_door_top,patch1=0:oxidized_copper_door_bottom,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=%waxed_weathered_copper_door,data=*,patch0=0:weathered_copper_door_top,patch1=0:weathered_copper_door_bottom,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=%copper_trapdoor,id=%waxed_copper_trapdoor,allfaces=0:copper_trapdoor,stdrot=true,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=%exposed_copper_trapdoor,id=%waxed_exposed_copper_trapdoor,allfaces=0:exposed_copper_trapdoor,stdrot=true,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=%oxidized_copper_trapdoor,id=%waxed_oxidized_copper_trapdoor,allfaces=0:oxidized_copper_trapdoor,stdrot=true,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=%weathered_copper_trapdoor,id=%waxed_weathered_copper_trapdoor,allfaces=0:weathered_copper_trapdoor,stdrot=true,transparency=TRANSPARENT
|
||||||
|
[1.20.3-]block:id=%copper_grate,patch0-5=0:copper_grate,transparency=TRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%exposed_copper_grate,patch0-5=0:exposed_copper_grate,transparency=TRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%weathered_copper_grate,patch0-5=0:weathered_copper_grate,transparency=TRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%oxidized_copper_grate,patch0-5=0:oxidized_copper_grate,transparency=TRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%waxed_copper_grate,patch0-5=0:copper_grate,transparency=TRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%waxed_exposed_copper_grate,patch0-5=0:exposed_copper_grate,transparency=TRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%waxed_weathered_copper_grate,patch0-5=0:weathered_copper_grate,transparency=TRANSPARENT,stdrot=true
|
||||||
|
[1.20.3-]block:id=%waxed_oxidized_copper_grate,patch0-5=0:oxidized_copper_grate,transparency=TRANSPARENT,stdrot=true
|
||||||
|
|
||||||
|
# 1.20.5
|
||||||
|
[1.20.5-]texture:id=vault_side_off_ominous,filename=assets/minecraft/textures/block/vault_side_off_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_bottom_ominous,filename=assets/minecraft/textures/block/vault_bottom_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_top_ominous,filename=assets/minecraft/textures/block/vault_top_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_front_off_ominous,filename=assets/minecraft/textures/block/vault_front_off_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_side_on_ominous,filename=assets/minecraft/textures/block/vault_side_on_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_front_on_ominous,filename=assets/minecraft/textures/block/vault_front_on_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_front_ejecting_ominous,filename=assets/minecraft/textures/block/vault_front_ejecting_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_top_ejecting_ominous,filename=assets/minecraft/textures/block/vault_top_ejecting_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_side_off,filename=assets/minecraft/textures/block/vault_side_off.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_bottom,filename=assets/minecraft/textures/block/vault_bottom.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_top,filename=assets/minecraft/textures/block/vault_top.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_front_off,filename=assets/minecraft/textures/block/vault_front_off.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_side_on,filename=assets/minecraft/textures/block/vault_side_on.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_front_on,filename=assets/minecraft/textures/block/vault_front_on.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_front_ejecting,filename=assets/minecraft/textures/block/vault_front_ejecting.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=vault_top_ejecting,filename=assets/minecraft/textures/block/vault_top_ejecting.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]texture:id=minecraft:all,filename=assets/minecraft/textures/all.png,xcount=1,ycount=1
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:north/ominous:true/vault_state:inactive,patch0=0:vault_side_off_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ominous,patch3=0:vault_front_off_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:north/ominous:true/vault_state:active,patch0=0:vault_side_on_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ominous,patch3=0:vault_front_on_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:north/ominous:true/vault_state:unlocking,patch0=0:vault_side_on_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ominous,patch3=0:vault_front_ejecting_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:north/ominous:true/vault_state:ejecting,patch0=0:vault_side_on_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ejecting_ominous,patch3=0:vault_front_ejecting_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:north/ominous:false/vault_state:inactive,patch0=0:vault_side_off,patch1=0:vault_bottom,patch2=0:vault_top,patch3=0:vault_front_off,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:north/ominous:false/vault_state:active,patch0=0:vault_side_on,patch1=0:vault_bottom,patch2=0:vault_top,patch3=0:vault_front_on,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:north/ominous:false/vault_state:unlocking,patch0=0:vault_side_on,patch1=0:vault_bottom,patch2=0:vault_top,patch3=0:vault_front_ejecting,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:north/ominous:false/vault_state:ejecting,patch0=0:vault_side_on,patch1=0:vault_bottom,patch2=0:vault_top_ejecting,patch3=0:vault_front_ejecting,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:south/ominous:true/vault_state:inactive,patch0=0:vault_side_off_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ominous,patch3=0:vault_front_off_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:south/ominous:true/vault_state:active,patch0=0:vault_side_on_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ominous,patch3=0:vault_front_on_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:south/ominous:true/vault_state:unlocking,patch0=0:vault_side_on_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ominous,patch3=0:vault_front_ejecting_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:south/ominous:true/vault_state:ejecting,patch0=0:vault_side_on_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ejecting_ominous,patch3=0:vault_front_ejecting_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:south/ominous:false/vault_state:inactive,patch0=0:vault_side_off,patch1=0:vault_bottom,patch2=0:vault_top,patch3=0:vault_front_off,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:south/ominous:false/vault_state:active,patch0=0:vault_side_on,patch1=0:vault_bottom,patch2=0:vault_top,patch3=0:vault_front_on,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:south/ominous:false/vault_state:unlocking,patch0=0:vault_side_on,patch1=0:vault_bottom,patch2=0:vault_top,patch3=0:vault_front_ejecting,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:south/ominous:false/vault_state:ejecting,patch0=0:vault_side_on,patch1=0:vault_bottom,patch2=0:vault_top_ejecting,patch3=0:vault_front_ejecting,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:west/ominous:true/vault_state:inactive,patch0=0:vault_side_off_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ominous,patch3=0:vault_front_off_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:west/ominous:true/vault_state:active,patch0=0:vault_side_on_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ominous,patch3=0:vault_front_on_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:west/ominous:true/vault_state:unlocking,patch0=0:vault_side_on_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ominous,patch3=0:vault_front_ejecting_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:west/ominous:true/vault_state:ejecting,patch0=0:vault_side_on_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ejecting_ominous,patch3=0:vault_front_ejecting_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:west/ominous:false/vault_state:inactive,patch0=0:vault_side_off,patch1=0:vault_bottom,patch2=0:vault_top,patch3=0:vault_front_off,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:west/ominous:false/vault_state:active,patch0=0:vault_side_on,patch1=0:vault_bottom,patch2=0:vault_top,patch3=0:vault_front_on,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:west/ominous:false/vault_state:unlocking,patch0=0:vault_side_on,patch1=0:vault_bottom,patch2=0:vault_top,patch3=0:vault_front_ejecting,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:west/ominous:false/vault_state:ejecting,patch0=0:vault_side_on,patch1=0:vault_bottom,patch2=0:vault_top_ejecting,patch3=0:vault_front_ejecting,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:east/ominous:true/vault_state:inactive,patch0=0:vault_side_off_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ominous,patch3=0:vault_front_off_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:east/ominous:true/vault_state:active,patch0=0:vault_side_on_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ominous,patch3=0:vault_front_on_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:east/ominous:true/vault_state:unlocking,patch0=0:vault_side_on_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ominous,patch3=0:vault_front_ejecting_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:east/ominous:true/vault_state:ejecting,patch0=0:vault_side_on_ominous,patch1=0:vault_bottom_ominous,patch2=0:vault_top_ejecting_ominous,patch3=0:vault_front_ejecting_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:east/ominous:false/vault_state:inactive,patch0=0:vault_side_off,patch1=0:vault_bottom,patch2=0:vault_top,patch3=0:vault_front_off,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:east/ominous:false/vault_state:active,patch0=0:vault_side_on,patch1=0:vault_bottom,patch2=0:vault_top,patch3=0:vault_front_on,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:east/ominous:false/vault_state:unlocking,patch0=0:vault_side_on,patch1=0:vault_bottom,patch2=0:vault_top,patch3=0:vault_front_ejecting,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%vault,state=facing:east/ominous:false/vault_state:ejecting,patch0=0:vault_side_on,patch1=0:vault_bottom,patch2=0:vault_top_ejecting,patch3=0:vault_front_ejecting,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.20.5-]block:id=%heavy_core,patch0=0:minecraft:all,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
|
||||||
|
# 1.21
|
||||||
|
[1.21-]texture:id=copper_bulb_lit_powered,filename=assets/minecraft/textures/block/copper_bulb_lit_powered.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=copper_bulb_lit,filename=assets/minecraft/textures/block/copper_bulb_lit.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=copper_bulb_powered,filename=assets/minecraft/textures/block/copper_bulb_powered.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=copper_bulb,filename=assets/minecraft/textures/block/copper_bulb.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=exposed_copper_bulb_lit_powered,filename=assets/minecraft/textures/block/exposed_copper_bulb_lit_powered.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=exposed_copper_bulb_lit,filename=assets/minecraft/textures/block/exposed_copper_bulb_lit.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=exposed_copper_bulb_powered,filename=assets/minecraft/textures/block/exposed_copper_bulb_powered.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=exposed_copper_bulb,filename=assets/minecraft/textures/block/exposed_copper_bulb.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=weathered_copper_bulb_lit_powered,filename=assets/minecraft/textures/block/weathered_copper_bulb_lit_powered.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=weathered_copper_bulb_lit,filename=assets/minecraft/textures/block/weathered_copper_bulb_lit.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=weathered_copper_bulb_powered,filename=assets/minecraft/textures/block/weathered_copper_bulb_powered.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=weathered_copper_bulb,filename=assets/minecraft/textures/block/weathered_copper_bulb.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=oxidized_copper_bulb_lit_powered,filename=assets/minecraft/textures/block/oxidized_copper_bulb_lit_powered.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=oxidized_copper_bulb_lit,filename=assets/minecraft/textures/block/oxidized_copper_bulb_lit.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=oxidized_copper_bulb_powered,filename=assets/minecraft/textures/block/oxidized_copper_bulb_powered.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=oxidized_copper_bulb,filename=assets/minecraft/textures/block/oxidized_copper_bulb.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_top_crafting,filename=assets/minecraft/textures/block/crafter_top_crafting.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_bottom,filename=assets/minecraft/textures/block/crafter_bottom.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_east_crafting,filename=assets/minecraft/textures/block/crafter_east_crafting.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_south_triggered,filename=assets/minecraft/textures/block/crafter_south_triggered.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_west_crafting,filename=assets/minecraft/textures/block/crafter_west_crafting.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_north_crafting,filename=assets/minecraft/textures/block/crafter_north_crafting.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_top_triggered,filename=assets/minecraft/textures/block/crafter_top_triggered.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_east_triggered,filename=assets/minecraft/textures/block/crafter_east_triggered.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_west_triggered,filename=assets/minecraft/textures/block/crafter_west_triggered.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_north,filename=assets/minecraft/textures/block/crafter_north.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_top,filename=assets/minecraft/textures/block/crafter_top.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_east,filename=assets/minecraft/textures/block/crafter_east.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_south,filename=assets/minecraft/textures/block/crafter_south.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=crafter_west,filename=assets/minecraft/textures/block/crafter_west.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=trial_spawner_top_inactive_ominous,filename=assets/minecraft/textures/block/trial_spawner_top_inactive_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=trial_spawner_bottom,filename=assets/minecraft/textures/block/trial_spawner_bottom.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=trial_spawner_side_inactive_ominous,filename=assets/minecraft/textures/block/trial_spawner_side_inactive_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=trial_spawner_top_active_ominous,filename=assets/minecraft/textures/block/trial_spawner_top_active_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=trial_spawner_side_active_ominous,filename=assets/minecraft/textures/block/trial_spawner_side_active_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=trial_spawner_top_ejecting_reward_ominous,filename=assets/minecraft/textures/block/trial_spawner_top_ejecting_reward_ominous.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=trial_spawner_top_inactive,filename=assets/minecraft/textures/block/trial_spawner_top_inactive.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=trial_spawner_side_inactive,filename=assets/minecraft/textures/block/trial_spawner_side_inactive.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=trial_spawner_top_active,filename=assets/minecraft/textures/block/trial_spawner_top_active.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=trial_spawner_side_active,filename=assets/minecraft/textures/block/trial_spawner_side_active.png,xcount=1,ycount=1
|
||||||
|
[1.21-]texture:id=trial_spawner_top_ejecting_reward,filename=assets/minecraft/textures/block/trial_spawner_top_ejecting_reward.png,xcount=1,ycount=1
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:down_east/triggered:true,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:down_east/triggered:false,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:down_north/triggered:true,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:down_north/triggered:false,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:down_south/triggered:true,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:down_south/triggered:false,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:down_west/triggered:true,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:down_west/triggered:false,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:up_east/triggered:true,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:up_east/triggered:false,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:up_north/triggered:true,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:up_north/triggered:false,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:up_south/triggered:true,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:up_south/triggered:false,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:up_west/triggered:true,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:up_west/triggered:false,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:west_up/triggered:true,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:west_up/triggered:false,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:east_up/triggered:true,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:east_up/triggered:false,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:north_up/triggered:true,patch0=0:crafter_west_crafting,patch1=0:crafter_bottom,patch2=0:crafter_north_crafting,patch3=0:crafter_east_crafting,patch4=5000:crafter_top_crafting,patch5=0:crafter_south_triggered,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:north_up/triggered:false,patch0=0:crafter_west_crafting,patch1=0:crafter_bottom,patch2=0:crafter_north_crafting,patch3=0:crafter_east_crafting,patch4=5000:crafter_top_crafting,patch5=0:crafter_south_triggered,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:south_up/triggered:true,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:true/orientation:south_up/triggered:false,patch0=0:crafter_top_crafting,patch1=0:crafter_bottom,patch2=0:crafter_east_crafting,patch3=0:crafter_south_triggered,patch4=0:crafter_west_crafting,patch5=0:crafter_north_crafting,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:down_east/triggered:true,patch0=0:crafter_top_triggered,patch1=0:crafter_bottom,patch2=0:crafter_east_triggered,patch3=0:crafter_south_triggered,patch4=0:crafter_west_triggered,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:down_east/triggered:false,patch0=0:crafter_top,patch1=0:crafter_bottom,patch2=0:crafter_east,patch3=0:crafter_south,patch4=0:crafter_west,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:down_north/triggered:true,patch0=0:crafter_top_triggered,patch1=0:crafter_bottom,patch2=0:crafter_east_triggered,patch3=0:crafter_south_triggered,patch4=0:crafter_west_triggered,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:down_north/triggered:false,patch0=0:crafter_top,patch1=0:crafter_bottom,patch2=0:crafter_east,patch3=0:crafter_south,patch4=0:crafter_west,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:down_south/triggered:true,patch0=0:crafter_top_triggered,patch1=0:crafter_bottom,patch2=0:crafter_east_triggered,patch3=0:crafter_south_triggered,patch4=0:crafter_west_triggered,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:down_south/triggered:false,patch0=0:crafter_top,patch1=0:crafter_bottom,patch2=0:crafter_east,patch3=0:crafter_south,patch4=0:crafter_west,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:down_west/triggered:true,patch0=0:crafter_top_triggered,patch1=0:crafter_bottom,patch2=0:crafter_east_triggered,patch3=0:crafter_south_triggered,patch4=0:crafter_west_triggered,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:down_west/triggered:false,patch0=0:crafter_top,patch1=0:crafter_bottom,patch2=0:crafter_east,patch3=0:crafter_south,patch4=0:crafter_west,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:up_east/triggered:true,patch0=0:crafter_top_triggered,patch1=0:crafter_bottom,patch2=0:crafter_east_triggered,patch3=0:crafter_south_triggered,patch4=0:crafter_west_triggered,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:up_east/triggered:false,patch0=0:crafter_top,patch1=0:crafter_bottom,patch2=0:crafter_east,patch3=0:crafter_south,patch4=0:crafter_west,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:up_north/triggered:true,patch0=0:crafter_top_triggered,patch1=0:crafter_bottom,patch2=0:crafter_east_triggered,patch3=0:crafter_south_triggered,patch4=0:crafter_west_triggered,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:up_north/triggered:false,patch0=0:crafter_top,patch1=0:crafter_bottom,patch2=0:crafter_east,patch3=0:crafter_south,patch4=0:crafter_west,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:up_south/triggered:true,patch0=0:crafter_top_triggered,patch1=0:crafter_bottom,patch2=0:crafter_east_triggered,patch3=0:crafter_south_triggered,patch4=0:crafter_west_triggered,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:up_south/triggered:false,patch0=0:crafter_top,patch1=0:crafter_bottom,patch2=0:crafter_east,patch3=0:crafter_south,patch4=0:crafter_west,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:up_west/triggered:true,patch0=0:crafter_top_triggered,patch1=0:crafter_bottom,patch2=0:crafter_east_triggered,patch3=0:crafter_south_triggered,patch4=0:crafter_west_triggered,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:up_west/triggered:false,patch0=0:crafter_top,patch1=0:crafter_bottom,patch2=0:crafter_east,patch3=0:crafter_south,patch4=0:crafter_west,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:west_up/triggered:true,patch0=0:crafter_top_triggered,patch1=0:crafter_bottom,patch2=0:crafter_east_triggered,patch3=0:crafter_south_triggered,patch4=0:crafter_west_triggered,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:west_up/triggered:false,patch0=0:crafter_top,patch1=0:crafter_bottom,patch2=0:crafter_east,patch3=0:crafter_south,patch4=0:crafter_west,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:east_up/triggered:true,patch0=0:crafter_top_triggered,patch1=0:crafter_bottom,patch2=0:crafter_east_triggered,patch3=0:crafter_south_triggered,patch4=0:crafter_west_triggered,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:east_up/triggered:false,patch0=0:crafter_top,patch1=0:crafter_bottom,patch2=0:crafter_east,patch3=0:crafter_south,patch4=0:crafter_west,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:north_up/triggered:true,patch0=0:crafter_west_triggered,patch1=0:crafter_bottom,patch2=0:crafter_north,patch3=0:crafter_east_triggered,patch4=5000:crafter_top_triggered,patch5=0:crafter_south_triggered,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:north_up/triggered:false,patch0=0:crafter_west,patch1=0:crafter_bottom,patch2=0:crafter_north,patch3=0:crafter_east,patch4=5000:crafter_top,patch5=0:crafter_south,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:south_up/triggered:true,patch0=0:crafter_top_triggered,patch1=0:crafter_bottom,patch2=0:crafter_east_triggered,patch3=0:crafter_south_triggered,patch4=0:crafter_west_triggered,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%crafter,state=crafting:false/orientation:south_up/triggered:false,patch0=0:crafter_top,patch1=0:crafter_bottom,patch2=0:crafter_east,patch3=0:crafter_south,patch4=0:crafter_west,patch5=0:crafter_north,stdrot=true
|
||||||
|
[1.21-]block:id=%trial_spawner,state=ominous:true/trial_spawner_state:inactive,patch0=0:trial_spawner_top_inactive_ominous,patch1=0:trial_spawner_bottom,patch2=0:trial_spawner_side_inactive_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.21-]block:id=%trial_spawner,state=ominous:true/trial_spawner_state:waiting_for_players,patch0=0:trial_spawner_top_active_ominous,patch1=0:trial_spawner_bottom,patch2=0:trial_spawner_side_active_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.21-]block:id=%trial_spawner,state=ominous:true/trial_spawner_state:active,patch0=0:trial_spawner_top_active_ominous,patch1=0:trial_spawner_bottom,patch2=0:trial_spawner_side_active_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.21-]block:id=%trial_spawner,state=ominous:true/trial_spawner_state:waiting_for_reward_ejection,patch0=0:trial_spawner_top_active_ominous,patch1=0:trial_spawner_bottom,patch2=0:trial_spawner_side_active_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.21-]block:id=%trial_spawner,state=ominous:true/trial_spawner_state:ejecting_reward,patch0=0:trial_spawner_top_ejecting_reward_ominous,patch1=0:trial_spawner_bottom,patch2=0:trial_spawner_side_active_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.21-]block:id=%trial_spawner,state=ominous:true/trial_spawner_state:cooldown,patch0=0:trial_spawner_top_inactive_ominous,patch1=0:trial_spawner_bottom,patch2=0:trial_spawner_side_inactive_ominous,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.21-]block:id=%trial_spawner,state=ominous:false/trial_spawner_state:inactive,patch0=0:trial_spawner_top_inactive,patch1=0:trial_spawner_bottom,patch2=0:trial_spawner_side_inactive,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.21-]block:id=%trial_spawner,state=ominous:false/trial_spawner_state:waiting_for_players,patch0=0:trial_spawner_top_active,patch1=0:trial_spawner_bottom,patch2=0:trial_spawner_side_active,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.21-]block:id=%trial_spawner,state=ominous:false/trial_spawner_state:active,patch0=0:trial_spawner_top_active,patch1=0:trial_spawner_bottom,patch2=0:trial_spawner_side_active,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.21-]block:id=%trial_spawner,state=ominous:false/trial_spawner_state:waiting_for_reward_ejection,patch0=0:trial_spawner_top_active,patch1=0:trial_spawner_bottom,patch2=0:trial_spawner_side_active,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.21-]block:id=%trial_spawner,state=ominous:false/trial_spawner_state:ejecting_reward,patch0=0:trial_spawner_top_ejecting_reward,patch1=0:trial_spawner_bottom,patch2=0:trial_spawner_side_active,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.21-]block:id=%trial_spawner,state=ominous:false/trial_spawner_state:cooldown,patch0=0:trial_spawner_top_inactive,patch1=0:trial_spawner_bottom,patch2=0:trial_spawner_side_inactive,transparency=SEMITRANSPARENT,stdrot=true
|
||||||
|
[1.21-]block:id=%copper_bulb,state=powered:true/lit:true,patch0=0:copper_bulb_lit_powered,patch1=0:copper_bulb_lit_powered,patch2=0:copper_bulb_lit_powered,patch3=0:copper_bulb_lit_powered,patch4=0:copper_bulb_lit_powered,patch5=0:copper_bulb_lit_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%copper_bulb,state=powered:false/lit:true,patch0=0:copper_bulb_lit,patch1=0:copper_bulb_lit,patch2=0:copper_bulb_lit,patch3=0:copper_bulb_lit,patch4=0:copper_bulb_lit,patch5=0:copper_bulb_lit,stdrot=true
|
||||||
|
[1.21-]block:id=%copper_bulb,state=powered:true/lit:false,patch0=0:copper_bulb_powered,patch1=0:copper_bulb_powered,patch2=0:copper_bulb_powered,patch3=0:copper_bulb_powered,patch4=0:copper_bulb_powered,patch5=0:copper_bulb_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%copper_bulb,state=powered:false/lit:false,patch0=0:copper_bulb,patch1=0:copper_bulb,patch2=0:copper_bulb,patch3=0:copper_bulb,patch4=0:copper_bulb,patch5=0:copper_bulb,stdrot=true
|
||||||
|
[1.21-]block:id=%exposed_copper_bulb,state=powered:true/lit:true,patch0=0:exposed_copper_bulb_lit_powered,patch1=0:exposed_copper_bulb_lit_powered,patch2=0:exposed_copper_bulb_lit_powered,patch3=0:exposed_copper_bulb_lit_powered,patch4=0:exposed_copper_bulb_lit_powered,patch5=0:exposed_copper_bulb_lit_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%exposed_copper_bulb,state=powered:false/lit:true,patch0=0:exposed_copper_bulb_lit,patch1=0:exposed_copper_bulb_lit,patch2=0:exposed_copper_bulb_lit,patch3=0:exposed_copper_bulb_lit,patch4=0:exposed_copper_bulb_lit,patch5=0:exposed_copper_bulb_lit,stdrot=true
|
||||||
|
[1.21-]block:id=%exposed_copper_bulb,state=powered:true/lit:false,patch0=0:exposed_copper_bulb_powered,patch1=0:exposed_copper_bulb_powered,patch2=0:exposed_copper_bulb_powered,patch3=0:exposed_copper_bulb_powered,patch4=0:exposed_copper_bulb_powered,patch5=0:exposed_copper_bulb_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%exposed_copper_bulb,state=powered:false/lit:false,patch0=0:exposed_copper_bulb,patch1=0:exposed_copper_bulb,patch2=0:exposed_copper_bulb,patch3=0:exposed_copper_bulb,patch4=0:exposed_copper_bulb,patch5=0:exposed_copper_bulb,stdrot=true
|
||||||
|
[1.21-]block:id=%weathered_copper_bulb,state=powered:true/lit:true,patch0=0:weathered_copper_bulb_lit_powered,patch1=0:weathered_copper_bulb_lit_powered,patch2=0:weathered_copper_bulb_lit_powered,patch3=0:weathered_copper_bulb_lit_powered,patch4=0:weathered_copper_bulb_lit_powered,patch5=0:weathered_copper_bulb_lit_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%weathered_copper_bulb,state=powered:false/lit:true,patch0=0:weathered_copper_bulb_lit,patch1=0:weathered_copper_bulb_lit,patch2=0:weathered_copper_bulb_lit,patch3=0:weathered_copper_bulb_lit,patch4=0:weathered_copper_bulb_lit,patch5=0:weathered_copper_bulb_lit,stdrot=true
|
||||||
|
[1.21-]block:id=%weathered_copper_bulb,state=powered:true/lit:false,patch0=0:weathered_copper_bulb_powered,patch1=0:weathered_copper_bulb_powered,patch2=0:weathered_copper_bulb_powered,patch3=0:weathered_copper_bulb_powered,patch4=0:weathered_copper_bulb_powered,patch5=0:weathered_copper_bulb_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%weathered_copper_bulb,state=powered:false/lit:false,patch0=0:weathered_copper_bulb,patch1=0:weathered_copper_bulb,patch2=0:weathered_copper_bulb,patch3=0:weathered_copper_bulb,patch4=0:weathered_copper_bulb,patch5=0:weathered_copper_bulb,stdrot=true
|
||||||
|
[1.21-]block:id=%oxidized_copper_bulb,state=powered:true/lit:true,patch0=0:oxidized_copper_bulb_lit_powered,patch1=0:oxidized_copper_bulb_lit_powered,patch2=0:oxidized_copper_bulb_lit_powered,patch3=0:oxidized_copper_bulb_lit_powered,patch4=0:oxidized_copper_bulb_lit_powered,patch5=0:oxidized_copper_bulb_lit_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%oxidized_copper_bulb,state=powered:false/lit:true,patch0=0:oxidized_copper_bulb_lit,patch1=0:oxidized_copper_bulb_lit,patch2=0:oxidized_copper_bulb_lit,patch3=0:oxidized_copper_bulb_lit,patch4=0:oxidized_copper_bulb_lit,patch5=0:oxidized_copper_bulb_lit,stdrot=true
|
||||||
|
[1.21-]block:id=%oxidized_copper_bulb,state=powered:true/lit:false,patch0=0:oxidized_copper_bulb_powered,patch1=0:oxidized_copper_bulb_powered,patch2=0:oxidized_copper_bulb_powered,patch3=0:oxidized_copper_bulb_powered,patch4=0:oxidized_copper_bulb_powered,patch5=0:oxidized_copper_bulb_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%oxidized_copper_bulb,state=powered:false/lit:false,patch0=0:oxidized_copper_bulb,patch1=0:oxidized_copper_bulb,patch2=0:oxidized_copper_bulb,patch3=0:oxidized_copper_bulb,patch4=0:oxidized_copper_bulb,patch5=0:oxidized_copper_bulb,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_copper_bulb,state=powered:true/lit:true,patch0=0:copper_bulb_lit_powered,patch1=0:copper_bulb_lit_powered,patch2=0:copper_bulb_lit_powered,patch3=0:copper_bulb_lit_powered,patch4=0:copper_bulb_lit_powered,patch5=0:copper_bulb_lit_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_copper_bulb,state=powered:false/lit:true,patch0=0:copper_bulb_lit,patch1=0:copper_bulb_lit,patch2=0:copper_bulb_lit,patch3=0:copper_bulb_lit,patch4=0:copper_bulb_lit,patch5=0:copper_bulb_lit,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_copper_bulb,state=powered:true/lit:false,patch0=0:copper_bulb_powered,patch1=0:copper_bulb_powered,patch2=0:copper_bulb_powered,patch3=0:copper_bulb_powered,patch4=0:copper_bulb_powered,patch5=0:copper_bulb_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_copper_bulb,state=powered:false/lit:false,patch0=0:copper_bulb,patch1=0:copper_bulb,patch2=0:copper_bulb,patch3=0:copper_bulb,patch4=0:copper_bulb,patch5=0:copper_bulb,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_exposed_copper_bulb,state=powered:true/lit:true,patch0=0:exposed_copper_bulb_lit_powered,patch1=0:exposed_copper_bulb_lit_powered,patch2=0:exposed_copper_bulb_lit_powered,patch3=0:exposed_copper_bulb_lit_powered,patch4=0:exposed_copper_bulb_lit_powered,patch5=0:exposed_copper_bulb_lit_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_exposed_copper_bulb,state=powered:false/lit:true,patch0=0:exposed_copper_bulb_lit,patch1=0:exposed_copper_bulb_lit,patch2=0:exposed_copper_bulb_lit,patch3=0:exposed_copper_bulb_lit,patch4=0:exposed_copper_bulb_lit,patch5=0:exposed_copper_bulb_lit,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_exposed_copper_bulb,state=powered:true/lit:false,patch0=0:exposed_copper_bulb_powered,patch1=0:exposed_copper_bulb_powered,patch2=0:exposed_copper_bulb_powered,patch3=0:exposed_copper_bulb_powered,patch4=0:exposed_copper_bulb_powered,patch5=0:exposed_copper_bulb_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_exposed_copper_bulb,state=powered:false/lit:false,patch0=0:exposed_copper_bulb,patch1=0:exposed_copper_bulb,patch2=0:exposed_copper_bulb,patch3=0:exposed_copper_bulb,patch4=0:exposed_copper_bulb,patch5=0:exposed_copper_bulb,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_weathered_copper_bulb,state=powered:true/lit:true,patch0=0:weathered_copper_bulb_lit_powered,patch1=0:weathered_copper_bulb_lit_powered,patch2=0:weathered_copper_bulb_lit_powered,patch3=0:weathered_copper_bulb_lit_powered,patch4=0:weathered_copper_bulb_lit_powered,patch5=0:weathered_copper_bulb_lit_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_weathered_copper_bulb,state=powered:false/lit:true,patch0=0:weathered_copper_bulb_lit,patch1=0:weathered_copper_bulb_lit,patch2=0:weathered_copper_bulb_lit,patch3=0:weathered_copper_bulb_lit,patch4=0:weathered_copper_bulb_lit,patch5=0:weathered_copper_bulb_lit,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_weathered_copper_bulb,state=powered:true/lit:false,patch0=0:weathered_copper_bulb_powered,patch1=0:weathered_copper_bulb_powered,patch2=0:weathered_copper_bulb_powered,patch3=0:weathered_copper_bulb_powered,patch4=0:weathered_copper_bulb_powered,patch5=0:weathered_copper_bulb_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_weathered_copper_bulb,state=powered:false/lit:false,patch0=0:weathered_copper_bulb,patch1=0:weathered_copper_bulb,patch2=0:weathered_copper_bulb,patch3=0:weathered_copper_bulb,patch4=0:weathered_copper_bulb,patch5=0:weathered_copper_bulb,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_oxidized_copper_bulb,state=powered:true/lit:true,patch0=0:oxidized_copper_bulb_lit_powered,patch1=0:oxidized_copper_bulb_lit_powered,patch2=0:oxidized_copper_bulb_lit_powered,patch3=0:oxidized_copper_bulb_lit_powered,patch4=0:oxidized_copper_bulb_lit_powered,patch5=0:oxidized_copper_bulb_lit_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_oxidized_copper_bulb,state=powered:false/lit:true,patch0=0:oxidized_copper_bulb_lit,patch1=0:oxidized_copper_bulb_lit,patch2=0:oxidized_copper_bulb_lit,patch3=0:oxidized_copper_bulb_lit,patch4=0:oxidized_copper_bulb_lit,patch5=0:oxidized_copper_bulb_lit,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_oxidized_copper_bulb,state=powered:true/lit:false,patch0=0:oxidized_copper_bulb_powered,patch1=0:oxidized_copper_bulb_powered,patch2=0:oxidized_copper_bulb_powered,patch3=0:oxidized_copper_bulb_powered,patch4=0:oxidized_copper_bulb_powered,patch5=0:oxidized_copper_bulb_powered,stdrot=true
|
||||||
|
[1.21-]block:id=%waxed_oxidized_copper_bulb,state=powered:false/lit:false,patch0=0:oxidized_copper_bulb,patch1=0:oxidized_copper_bulb,patch2=0:oxidized_copper_bulb,patch3=0:oxidized_copper_bulb,patch4=0:oxidized_copper_bulb,patch5=0:oxidized_copper_bulb,stdrot=true
|
||||||
|
|
||||||
|
Before Width: | Height: | Size: 252 B After Width: | Height: | Size: 219 B |
Before Width: | Height: | Size: 264 B After Width: | Height: | Size: 233 B |
Before Width: | Height: | Size: 249 B After Width: | Height: | Size: 210 B |
Before Width: | Height: | Size: 259 B After Width: | Height: | Size: 193 B |
Before Width: | Height: | Size: 301 B After Width: | Height: | Size: 243 B |
Before Width: | Height: | Size: 269 B After Width: | Height: | Size: 202 B |
Before Width: | Height: | Size: 232 B After Width: | Height: | Size: 204 B |
Before Width: | Height: | Size: 294 B After Width: | Height: | Size: 242 B |
Before Width: | Height: | Size: 295 B After Width: | Height: | Size: 243 B |
Before Width: | Height: | Size: 284 B After Width: | Height: | Size: 212 B |
Before Width: | Height: | Size: 249 B After Width: | Height: | Size: 215 B |
Before Width: | Height: | Size: 276 B After Width: | Height: | Size: 207 B |
Before Width: | Height: | Size: 298 B After Width: | Height: | Size: 222 B |
Before Width: | Height: | Size: 260 B After Width: | Height: | Size: 198 B |
Before Width: | Height: | Size: 236 B After Width: | Height: | Size: 170 B |
Before Width: | Height: | Size: 201 B After Width: | Height: | Size: 192 B |
Before Width: | Height: | Size: 146 B After Width: | Height: | Size: 144 B |
Before Width: | Height: | Size: 265 B After Width: | Height: | Size: 209 B |
Before Width: | Height: | Size: 287 B After Width: | Height: | Size: 248 B |
Before Width: | Height: | Size: 235 B After Width: | Height: | Size: 201 B |
Before Width: | Height: | Size: 251 B After Width: | Height: | Size: 184 B |
Before Width: | Height: | Size: 299 B After Width: | Height: | Size: 219 B |
Before Width: | Height: | Size: 198 B After Width: | Height: | Size: 166 B |
Before Width: | Height: | Size: 327 B After Width: | Height: | Size: 244 B |
Before Width: | Height: | Size: 304 B After Width: | Height: | Size: 253 B |
Before Width: | Height: | Size: 295 B After Width: | Height: | Size: 249 B |
Before Width: | Height: | Size: 289 B After Width: | Height: | Size: 214 B |
Before Width: | Height: | Size: 213 B After Width: | Height: | Size: 153 B |
Before Width: | Height: | Size: 213 B After Width: | Height: | Size: 153 B |
Before Width: | Height: | Size: 290 B After Width: | Height: | Size: 255 B |
Before Width: | Height: | Size: 303 B After Width: | Height: | Size: 230 B |
Before Width: | Height: | Size: 274 B After Width: | Height: | Size: 225 B |
Before Width: | Height: | Size: 255 B After Width: | Height: | Size: 232 B |
Before Width: | Height: | Size: 246 B After Width: | Height: | Size: 241 B |
Before Width: | Height: | Size: 279 B After Width: | Height: | Size: 203 B |
Before Width: | Height: | Size: 323 B After Width: | Height: | Size: 261 B |
Before Width: | Height: | Size: 270 B After Width: | Height: | Size: 214 B |
Before Width: | Height: | Size: 258 B After Width: | Height: | Size: 205 B |
Before Width: | Height: | Size: 243 B After Width: | Height: | Size: 203 B |
Before Width: | Height: | Size: 223 B After Width: | Height: | Size: 193 B |
Before Width: | Height: | Size: 256 B After Width: | Height: | Size: 187 B |
Before Width: | Height: | Size: 279 B After Width: | Height: | Size: 211 B |
Before Width: | Height: | Size: 211 B After Width: | Height: | Size: 198 B |
Before Width: | Height: | Size: 247 B After Width: | Height: | Size: 169 B |
Before Width: | Height: | Size: 220 B After Width: | Height: | Size: 185 B |
Before Width: | Height: | Size: 286 B After Width: | Height: | Size: 237 B |
Before Width: | Height: | Size: 315 B After Width: | Height: | Size: 249 B |
Before Width: | Height: | Size: 243 B After Width: | Height: | Size: 208 B |
Before Width: | Height: | Size: 220 B After Width: | Height: | Size: 185 B |
Before Width: | Height: | Size: 216 B After Width: | Height: | Size: 181 B |
Before Width: | Height: | Size: 250 B After Width: | Height: | Size: 207 B |
Before Width: | Height: | Size: 291 B After Width: | Height: | Size: 243 B |
Before Width: | Height: | Size: 247 B After Width: | Height: | Size: 207 B |
Before Width: | Height: | Size: 198 B After Width: | Height: | Size: 180 B |
Before Width: | Height: | Size: 219 B After Width: | Height: | Size: 200 B |
Before Width: | Height: | Size: 195 B After Width: | Height: | Size: 182 B |
Before Width: | Height: | Size: 245 B After Width: | Height: | Size: 214 B |
Before Width: | Height: | Size: 297 B After Width: | Height: | Size: 234 B |
Before Width: | Height: | Size: 274 B After Width: | Height: | Size: 230 B |
Before Width: | Height: | Size: 231 B After Width: | Height: | Size: 198 B |
Before Width: | Height: | Size: 266 B After Width: | Height: | Size: 208 B |
Before Width: | Height: | Size: 298 B After Width: | Height: | Size: 239 B |
Before Width: | Height: | Size: 268 B After Width: | Height: | Size: 202 B |
Before Width: | Height: | Size: 223 B After Width: | Height: | Size: 196 B |
Before Width: | Height: | Size: 310 B After Width: | Height: | Size: 248 B |
Before Width: | Height: | Size: 228 B After Width: | Height: | Size: 172 B |
Before Width: | Height: | Size: 349 B After Width: | Height: | Size: 285 B |
Before Width: | Height: | Size: 266 B After Width: | Height: | Size: 256 B |
Before Width: | Height: | Size: 350 B After Width: | Height: | Size: 334 B |
Before Width: | Height: | Size: 417 B After Width: | Height: | Size: 364 B |
Before Width: | Height: | Size: 290 B After Width: | Height: | Size: 204 B |
Before Width: | Height: | Size: 288 B After Width: | Height: | Size: 195 B |
Before Width: | Height: | Size: 314 B After Width: | Height: | Size: 266 B |
Before Width: | Height: | Size: 369 B After Width: | Height: | Size: 286 B |
Before Width: | Height: | Size: 294 B After Width: | Height: | Size: 256 B |
Before Width: | Height: | Size: 247 B After Width: | Height: | Size: 204 B |
Before Width: | Height: | Size: 205 B After Width: | Height: | Size: 172 B |
Before Width: | Height: | Size: 257 B After Width: | Height: | Size: 202 B |
Before Width: | Height: | Size: 248 B After Width: | Height: | Size: 189 B |
Before Width: | Height: | Size: 186 B After Width: | Height: | Size: 179 B |
Before Width: | Height: | Size: 317 B After Width: | Height: | Size: 277 B |
Before Width: | Height: | Size: 463 B After Width: | Height: | Size: 382 B |
Before Width: | Height: | Size: 167 B After Width: | Height: | Size: 139 B |
Before Width: | Height: | Size: 242 B After Width: | Height: | Size: 194 B |
Before Width: | Height: | Size: 413 B After Width: | Height: | Size: 319 B |
Before Width: | Height: | Size: 255 B After Width: | Height: | Size: 206 B |
Before Width: | Height: | Size: 284 B After Width: | Height: | Size: 210 B |