Schematica

Schematica

8M Downloads

Leaves are glitchy

TsCode1 opened this issue ยท 15 comments

commented

For some reason the leaves sometimes don't work and they are orange.
I think you should add on option for "Don't destroy orange" So it keeps the same base block instead of breaking it forever and replacing it forever.

I also think you should if you can, fix pots or cauldrons that are filled with flower/water.

Big fan of the mod, thanks .

commented

The current workaround is to use /schematicaReplace to set the player=true/decay=false flags.

I also think you should if you can, fix pots or cauldrons that are filled with flower/water.

Fix what exactly?

commented

Is there a way i can do such a command on a multiplayer server?

Also, pots that are filled with plants are not detected by printer, but I assume that won't be possible to fix due to minecraft's entity IDs

commented

Is there a way i can do such a command on a multiplayer server?

Yep, the command is clientside, so you can use it even on servers. I think you should be able to do something like:

/schematicaReplace minecraft:leaves[decayable=true] minecraft:leaves[decayable=false]

but you may need to do a larger command (I'm not 100% sure how block states work in /schematicaReplace):

/schematicaReplace minecraft:leaves[variant=oak,check_decay=false,decayable=true] minecraft:leaves[variant=oak,check_decay=false,decayable=false]
/schematicaReplace minecraft:leaves[variant=oak,check_decay=true,decayable=true] minecraft:leaves[variant=oak,check_decay=false,decayable=false]
/schematicaReplace minecraft:leaves[variant=spruce,check_decay=false,decayable=true] minecraft:leaves[variant=spruce,check_decay=false,decayable=false]
/schematicaReplace minecraft:leaves[variant=spruce,check_decay=true,decayable=true] minecraft:leaves[variant=spruce,check_decay=false,decayable=false]
/schematicaReplace minecraft:leaves[variant=birch,check_decay=false,decayable=true] minecraft:leaves[variant=birch,check_decay=false,decayable=false]
/schematicaReplace minecraft:leaves[variant=birch,check_decay=true,decayable=true] minecraft:leaves[variant=birch,check_decay=false,decayable=false]
/schematicaReplace minecraft:leaves[variant=jungle,check_decay=false,decayable=true] minecraft:leaves[variant=jungle,check_decay=false,decayable=false]
/schematicaReplace minecraft:leaves[variant=jungle,check_decay=true,decayable=true] minecraft:leaves[variant=jungle,check_decay=false,decayable=false]
/schematicaReplace minecraft:leaves2[variant=acacia,check_decay=false,decayable=true] minecraft:leaves2[variant=acacia,check_decay=false,decayable=false]
/schematicaReplace minecraft:leaves2[variant=acacia,check_decay=true,decayable=true] minecraft:leaves2[variant=acacia,check_decay=false,decayable=false]
/schematicaReplace minecraft:leaves2[variant=dark_oak,check_decay=false,decayable=true] minecraft:leaves2[variant=dark_oak,check_decay=false,decayable=false]
/schematicaReplace minecraft:leaves2[variant=dark_oak,check_decay=true,decayable=true] minecraft:leaves2[variant=dark_oak,check_decay=false,decayable=false]

Note that the command is case-sensitive.

Also, pots that are filled with plants are not detected by printer, but I assume that won't be possible to fix due to minecraft's entity IDs

Yeah, they have a block entity. It might be possible to add printer support (since the block entity is sent to the client), though.

commented

Ok, thanks. Solved issue.

commented

You actually don't have to specify the log type. If you omit it in the filter and replacement, it will just keep the original value.

The following would update all log types (oak, spruce, birch, jungle / acacia, dark oak):

/schematicaReplace minecraft:log[axis=none] minecraft:log[axis=y]
/schematicaReplace minecraft:log2[axis=none] minecraft:log2[axis=y]
commented

The replacer does 3 things:

  1. make a copy of the default block state
  2. copy all matching properties from the source block (for example: color, blue glass > blue hardened clay)
  3. apply all replacement filters (second argument to schematicaReplace)
commented

can you guys also give me a command to replace full sided logs to a different block?

You can use F3 to get block states of a block (both the one in the schematic, indicated with [S], and the normal minecraft one), which is useful for making these commands.

It'd be e.g. /schematicaReplace minecraft:log[axis=none,variant=oak] minecraft:log[axis=y,variant=oak].

commented

what is the "axis" part for

commented

Check the vanilla wiki page: Wood (Block State). It's basically the log orientation, where none is a block without a top texture.

commented

ok ive figured it out, just cant seem to replace dispensers idk why. i did /schematicaReplace minecraft:dispenser minecraft:air and i also tried /schematicaReplace minecraft:dispenser[triggered=false,facing=west] minecraft:crafting_table and it says 0 replaced

commented

Are they maybe droppers instead of dispensers?

commented

No i've double checked

commented

Just checked the code, tile entities are currently disabled.

// TODO: add support for tile entities?
if (blockState.getBlock().hasTileEntity(blockState)) {
continue;
}
if (matcher.apply(blockState)) {
final IBlockState replacement = replacer.getReplacement(blockState, properties);
// TODO: add support for tile entities?
if (replacement.getBlock().hasTileEntity(replacement)) {
continue;
}

commented

Is there a way i can make air blocks not get destroyed by printer? like in world edit when u paste -a, ignoring all the air blocks. Thanks btw.

commented

There should be an option in the printer settings for that, though I don't know the name without looking it up.