Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -102,3 +102,4 @@ venv.bak/

# mypy
.mypy_cache/
/.vscode/launch.json
11 changes: 9 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
FROM python:3-alpine
FROM python:alpine3.12

RUN apk --no-cache add git mesa-osmesa mesa-gles gcc gfortran python-dev build-base wget freetype-dev fontconfig-dev libpng-dev libjpeg-turbo-dev openblas-dev && pip install numpy vispy Pillow
RUN apk --no-cache add git py3-pip mesa-osmesa mesa-gles gcc gfortran python3-dev build-base wget freetype-dev fontconfig-dev libpng-dev libjpeg-turbo-dev openblas-dev
RUN pip3 install -U scikit-build make
RUN pip3 install numpy==1.17.5
RUN pip3 install Pillow==6.2.2
RUN pip3 install vispy==0.5.3

COPY . /blockcrafter
RUN cd /blockcrafter && pip wheel .
Expand All @@ -18,4 +22,7 @@ COPY entrypoint.sh /
ENV VISPY_GL_LIB /usr/lib/libGLESv2.so.2
ENV OSMESA_LIBRARY /usr/lib/libOSMesa.so.8

# If this line starts failing, hopefully that means the dependency was fixed. That should be your cue to remove this line
RUN sed -i 's/from fractions import gcd/from math import gcd/' /usr/local/lib/python3.9/site-packages/vispy/geometry/torusknot.py

ENTRYPOINT ["/entrypoint.sh"]
128 changes: 34 additions & 94 deletions blockcrafter/blockstates.properties
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,14 @@ minecraft:jungle_leaves biome_type=simple,biome_colors=foliage,biome_colormap=fo
minecraft:oak_leaves biome_type=simple,biome_colors=foliage,biome_colormap=foliage
minecraft:birch_leaves biome_type=simple,biome_colors=foliage_flipped,biome_colormap=foliage_flipped
minecraft:acacia_leaves biome_type=simple,biome_colors=foliage,biome_colormap=foliage
minecraft:vine biome_type=simple,biome_colors=grass,biome_colormap=grass
minecraft:vine biome_type=simple,biome_colors=grass,biome_colormap=grass,default_variant=east:false;north:false;south:false;west:false;up:false
minecraft:lily_pad* biome_type=simple,biome_colors=grass,biome_colormap=grass
minecraft:grass biome_type=simple,biome_colors=grass,biome_colormap=grass
minecraft:tall_grass biome_type=simple,biome_colors=grass,biome_colormap=grass
minecraft:fern biome_type=simple,biome_colors=grass,biome_colormap=grass
minecraft:large_fern biome_type=simple,biome_colors=grass,biome_colormap=grass
minecraft:*_stem biome_type=simple,biome_colors=grass,biome_colormap=grass
minecraft:*melon_stem biome_type=simple,biome_colors=grass,biome_colormap=grass
minecraft:*pumpkin_stem biome_type=simple,biome_colors=grass,biome_colormap=grass
minecraft:redstone_wire biome_type=simple,biome_colors=grass,biome_colormap=#ff0000c0|#ff0000c0|#ff0000c0

minecraft:seagrass is_waterloggable=true,inherently_waterlogged=true
Expand All @@ -23,128 +24,67 @@ minecraft:kelp is_waterloggable=true,inherently_waterlogged=true
minecraft:kelp_plant is_waterloggable=true,inherently_waterlogged=true
minecraft:bubble_column is_waterloggable=true,inherently_waterlogged=true

#minecraft:glass_pane is_waterloggable=true
#minecraft:white_stained_glass_pane is_waterloggable=true
#minecraft:orange_stained_glass_pane is_waterloggable=true
#minecraft:magenta_stained_glass_pane is_waterloggable=true
#minecraft:light_blue_stained_glass_pane is_waterloggable=true
#minecraft:yellow_stained_glass_pane is_waterloggable=true
#minecraft:lime_stained_glass_pane is_waterloggable=true
#minecraft:pink_stained_glass_pane is_waterloggable=true
#minecraft:gray_stained_glass_pane is_waterloggable=true
#minecraft:light_gray_stained_glass_pane is_waterloggable=true
#minecraft:cyan_stained_glass_pane is_waterloggable=true
#minecraft:purple_stained_glass_pane is_waterloggable=true
#minecraft:blue_stained_glass_pane is_waterloggable=true
#minecraft:brown_stained_glass_pane is_waterloggable=true
#minecraft:green_stained_glass_pane is_waterloggable=true
#minecraft:red_stained_glass_pane is_waterloggable=true
#minecraft:black_stained_glass_pane is_waterloggable=true
minecraft:*glass_pane is_waterloggable=true
minecraft:*_stained_glass partial=true

#minecraft:acacia_fence is_waterloggable=true
#minecraft:acacia_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:acacia_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:acacia_trapdoor is_waterloggable=true
#minecraft:birch_fence is_waterloggable=true
#minecraft:birch_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:birch_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:birch_trapdoor is_waterloggable=true
#minecraft:dark_oak_fence is_waterloggable=true
#minecraft:dark_oak_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:dark_oak_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:dark_oak_trapdoor is_waterloggable=true
#minecraft:jungle_fence is_waterloggable=true
#minecraft:jungle_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:jungle_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:jungle_trapdoor is_waterloggable=true
#minecraft:oak_fence is_waterloggable=true
#minecraft:oak_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:oak_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:oak_trapdoor is_waterloggable=true
#minecraft:spruce_fence is_waterloggable=true
#minecraft:spruce_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:spruce_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:spruce_trapdoor is_waterloggable=true
minecraft:*_fence is_waterloggable=true
minecraft:*_fence is_waterloggable=true,default_variant=east:false;north:false;south:false;west:false
minecraft:*_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
minecraft:*_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
minecraft:*_trapdoor is_waterloggable=true

#minecraft:brick_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:brick_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:cobblestone_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:cobblestone_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:dark_prismarine_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:dark_prismarine_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:nether_brick_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:nether_brick_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:purpur_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:purpur_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:red_sandstone_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:red_sandstone_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:sandstone_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:sandstone_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:stone_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:stone_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:stone_brick_slab is_waterloggable=true,lighting_type=smooth,faulty_lighting=true
#minecraft:stone_brick_stairs is_waterloggable=true,lighting_type=smooth,faulty_lighting=true

#minecraft:dead_brain_coral is_waterloggable=true
#minecraft:dead_brain_coral_fan is_waterloggable=true
#minecraft:dead_bubble_coral is_waterloggable=true
#minecraft:dead_bubble_coral_fan is_waterloggable=true
#minecraft:dead_fire_coral is_waterloggable=true
#minecraft:dead_fire_coral_fan is_waterloggable=true
#minecraft:dead_horn_coral is_waterloggable=true
#minecraft:dead_horn_coral_fan is_waterloggable=true
#minecraft:dead_tube_coral is_waterloggable=true
#minecraft:dead_tube_coral_fan is_waterloggable=true
#minecraft:brain_coral is_waterloggable=true
#minecraft:brain_coral_fan is_waterloggable=true
#minecraft:bubble_coral is_waterloggable=true
#minecraft:bubble_coral_fan is_waterloggable=true
#minecraft:fire_coral is_waterloggable=true
#minecraft:fire_coral_fan is_waterloggable=true
#minecraft:horn_coral is_waterloggable=true
#minecraft:horn_coral_fan is_waterloggable=true
#minecraft:tube_coral is_waterloggable=true
#minecraft:tube_coral_fan is_waterloggable=true
minecraft:*_coral is_waterloggable=true
minecraft:*_coral_fan is_waterloggable=true
minecraft:*_coral_wall_fan is_waterloggable=true

#minecraft:chest is_waterloggable=true
#minecraft:ender_chest is_waterloggable=true
#minecraft:trapped_chest is_waterloggable=true
minecraft:*chest is_waterloggable=true
minecraft:*sign is_waterloggable=true
minecraft:*shulker_box is_waterloggable=true

minecraft:iron_bars is_waterloggable=true
minecraft:chain is_waterloggable=true
minecraft:iron_trapdoor is_waterloggable=true
minecraft:ladder is_waterloggable=true
minecraft:cobblestone_wall is_waterloggable=true
minecraft:mossy_cobblestone_wall is_waterloggable=true
minecraft:nether_brick_fence is_waterloggable=true
minecraft:*_wall is_waterloggable=true,default_variant=east:none;north:none;south:none;west:none;up:false
minecraft:sea_pickle is_waterloggable=true
minecraft:conduit is_waterloggable=true
minecraft:conduit is_waterloggable=true,disable_culling=true

minecraft:farmland faulty_lighting=true
minecraft:anvil faulty_lighting=true
minecraft:grass_path faulty_lighting=true
minecraft:dirt_path faulty_lighting=true
minecraft:cocoa faulty_lighting=true
minecraft:dragon_egg faulty_lighting=true

minecraft:snow lighting_type=smooth_bottom
minecraft:grass_path lighting_type=smooth,shadow_edges=1
minecraft:dirt_path lighting_type=smooth,shadow_edges=1

minecraft:water lighting_type=smooth,biome_type=simple,biome_colors=water
minecraft:flowing_water lighting_type=smooth,biome_type=simple,biome_colors=water
minecraft:full_water lighting_type=smooth,biome_type=simple,biome_colors=water
minecraft:full_water lighting_type=smooth,biome_type=simple,biome_colors=water,default_variant=south:true;west:true
minecraft:waterlog lighting_type=smooth,biome_type=simple,biome_colors=water,shadow_edges=1

minecraft:snow shadow_edges=1
minecraft:*_leaves shadow_edges=5
minecraft:water_cauldron lighting_type=smooth,biome_type=simple,biome_colors=water,shadow_edges=1

minecraft:sculk_sensor is_waterloggable=true
minecraft:*candle is_waterloggable=true
minecraft:*amethyst_bud is_waterloggable=true
minecraft:amethyst_cluster is_waterloggable=true
minecraft:*_dripstone is_waterloggable=true
minecraft:*rail is_waterloggable=true
minecraft:*campfire is_waterloggable=true
minecraft:scaffolding is_waterloggable=true
minecraft:*lantern is_waterloggable=true
minecraft:glow_lichen is_waterloggable=true,default_variant=east:false;north:false;south:false;west:false;up:false;down:false
minecraft:*grimstone* is_waterloggable=true
minecraft:*blackstone* is_waterloggable=true
minecraft:*_dripleaf* is_waterloggable=true
minecraft:lightning_rod is_waterloggable=true

minecraft:ice partial=true
minecraft:honey_block partial=true
minecraft:snow shadow_edges=1,partial=true
# minecraft:*_leaves* shadow_edges=5,partial=true
minecraft:*_leaves* shadow_edges=5
minecraft:full_water shadow_edges=1
minecraft:water shadow_edges=1
minecraft:*_slab shadow_edges=1
Expand Down
23 changes: 23 additions & 0 deletions blockcrafter/custom_assets/minecraft/blockstates/acacia_sign.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"variants": {
"rotation=0": { "model": "block/acacia_sign", "y": 0 },
"rotation=1": { "model": "block/acacia_sign", "y": 22.5 },
"rotation=2": { "model": "block/acacia_sign", "y": 45 },
"rotation=3": { "model": "block/acacia_sign", "y": 67.5 },

"rotation=4": { "model": "block/acacia_sign", "y": 90 },
"rotation=5": { "model": "block/acacia_sign", "y": 112.5 },
"rotation=6": { "model": "block/acacia_sign", "y": 135},
"rotation=7": { "model": "block/acacia_sign", "y": 157.5 },

"rotation=8": { "model": "block/acacia_sign", "y": 180 },
"rotation=9": { "model": "block/acacia_sign", "y": 202.5 },
"rotation=10": { "model": "block/acacia_sign", "y": 225 },
"rotation=11": { "model": "block/acacia_sign", "y": 247.5 },

"rotation=12": { "model": "block/acacia_sign", "y": 270 },
"rotation=13": { "model": "block/acacia_sign", "y": 292.5 },
"rotation=14": { "model": "block/acacia_sign", "y": 315 },
"rotation=15": { "model": "block/acacia_sign", "y": 337.5 }
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"variants": {
"facing=north": { "model": "block/acacia_wall_sign", "y" : 180 },
"facing=south": { "model": "block/acacia_wall_sign", "y": 0 },
"facing=east": { "model": "block/acacia_wall_sign", "y": 270 },
"facing=west": { "model": "block/acacia_wall_sign", "y": 90 }
}
}
26 changes: 26 additions & 0 deletions blockcrafter/custom_assets/minecraft/blockstates/bamboo.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
"multipart": [
{ "when": { "leaves": "none", "age": "0" },
"apply": [
{ "model": "block/bamboo1_age0" },
{ "model": "block/bamboo2_age0" },
{ "model": "block/bamboo3_age0" },
{ "model": "block/bamboo4_age0" }
]
},
{ "when": { "leaves": "none", "age": "1" },
"apply": [
{ "model": "block/bamboo1_age1" },
{ "model": "block/bamboo2_age1" },
{ "model": "block/bamboo3_age1" },
{ "model": "block/bamboo4_age1" }
]
},
{ "when": { "leaves": "small" },
"apply": { "model": "block/bamboo_small_leaves" }
},
{ "when": { "leaves": "large" },
"apply": { "model": "block/bamboo_large_leaves" }
}
]
}
24 changes: 24 additions & 0 deletions blockcrafter/custom_assets/minecraft/blockstates/bell.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"variants": {
"facing=north,attachment=floor": { "model": "block/bell_floor" },
"facing=south,attachment=floor": { "model": "block/bell_floor", "y": 180 },
"facing=east,attachment=floor": { "model": "block/bell_floor", "y": 90 },
"facing=west,attachment=floor": { "model": "block/bell_floor", "y": 270 },
"facing=north,attachment=ceiling": { "model": "block/bell_ceiling" },
"facing=south,attachment=ceiling": { "model": "block/bell_ceiling", "y": 180 },
"facing=east,attachment=ceiling": { "model": "block/bell_ceiling", "y": 90 },
"facing=west,attachment=ceiling": { "model": "block/bell_ceiling", "y": 270 },
"facing=east,attachment=single_wall": { "model": "block/bell_wall" },
"facing=west,attachment=single_wall": { "model": "block/bell_wall", "y": 180 },
"facing=south,attachment=single_wall": { "model": "block/bell_wall", "y": 90 },
"facing=north,attachment=single_wall": { "model": "block/bell_wall", "y": 270 },
"facing=east,attachment=double_wall": { "model": "block/bell_between_walls" },
"facing=west,attachment=double_wall": { "model": "block/bell_between_walls", "y": 180 },
"facing=north,attachment=double_wall": { "model": "block/bell_between_walls", "y": 90 },
"facing=south,attachment=double_wall": { "model": "block/bell_between_walls", "y": 270 },
"facing=north" : { "model" : "block/simple_bell", "y": 180 },
"facing=south" : { "model" : "block/simple_bell", "y": 0 },
"facing=east" : { "model" : "block/simple_bell", "y": 270 },
"facing=west" : { "model" : "block/simple_bell", "y": 90 }
}
}
23 changes: 23 additions & 0 deletions blockcrafter/custom_assets/minecraft/blockstates/birch_sign.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"variants": {
"rotation=0": { "model": "block/birch_sign", "y": 0 },
"rotation=1": { "model": "block/birch_sign", "y": 22.5 },
"rotation=2": { "model": "block/birch_sign", "y": 45 },
"rotation=3": { "model": "block/birch_sign", "y": 67.5 },

"rotation=4": { "model": "block/birch_sign", "y": 90 },
"rotation=5": { "model": "block/birch_sign", "y": 112.5 },
"rotation=6": { "model": "block/birch_sign", "y": 135},
"rotation=7": { "model": "block/birch_sign", "y": 157.5 },

"rotation=8": { "model": "block/birch_sign", "y": 180 },
"rotation=9": { "model": "block/birch_sign", "y": 202.5 },
"rotation=10": { "model": "block/birch_sign", "y": 225 },
"rotation=11": { "model": "block/birch_sign", "y": 247.5 },

"rotation=12": { "model": "block/birch_sign", "y": 270 },
"rotation=13": { "model": "block/birch_sign", "y": 292.5 },
"rotation=14": { "model": "block/birch_sign", "y": 315 },
"rotation=15": { "model": "block/birch_sign", "y": 337.5 }
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"variants": {
"facing=north": { "model": "block/birch_wall_sign", "y" : 180 },
"facing=south": { "model": "block/birch_wall_sign", "y": 0 },
"facing=east": { "model": "block/birch_wall_sign", "y": 270 },
"facing=west": { "model": "block/birch_wall_sign", "y": 90 }
}
}
31 changes: 31 additions & 0 deletions blockcrafter/custom_assets/minecraft/blockstates/composter.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{
"multipart": [
{ "apply": { "model": "block/composter" }},
{ "when": { "level": "0" }
},
{ "when": { "level": "1" },
"apply": { "model": "block/composter_contents1" }
},
{ "when": { "level": "2" },
"apply": { "model": "block/composter_contents2" }
},
{ "when": { "level": "3" },
"apply": { "model": "block/composter_contents3" }
},
{ "when": { "level": "4" },
"apply": { "model": "block/composter_contents4" }
},
{ "when": { "level": "5" },
"apply": { "model": "block/composter_contents5" }
},
{ "when": { "level": "6" },
"apply": { "model": "block/composter_contents6" }
},
{ "when": { "level": "7" },
"apply": { "model": "block/composter_contents7" }
},
{ "when": { "level": "8" },
"apply": { "model": "block/composter_contents_ready" }
}
]
}
5 changes: 5 additions & 0 deletions blockcrafter/custom_assets/minecraft/blockstates/conduit.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"variants": {
"": { "model": "block/conduit" }
}
}
23 changes: 23 additions & 0 deletions blockcrafter/custom_assets/minecraft/blockstates/crimson_sign.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"variants": {
"rotation=0": { "model": "block/crimson_sign", "y": 0 },
"rotation=1": { "model": "block/crimson_sign", "y": 22.5 },
"rotation=2": { "model": "block/crimson_sign", "y": 45 },
"rotation=3": { "model": "block/crimson_sign", "y": 67.5 },

"rotation=4": { "model": "block/crimson_sign", "y": 90 },
"rotation=5": { "model": "block/crimson_sign", "y": 112.5 },
"rotation=6": { "model": "block/crimson_sign", "y": 135},
"rotation=7": { "model": "block/crimson_sign", "y": 157.5 },

"rotation=8": { "model": "block/crimson_sign", "y": 180 },
"rotation=9": { "model": "block/crimson_sign", "y": 202.5 },
"rotation=10": { "model": "block/crimson_sign", "y": 225 },
"rotation=11": { "model": "block/crimson_sign", "y": 247.5 },

"rotation=12": { "model": "block/crimson_sign", "y": 270 },
"rotation=13": { "model": "block/crimson_sign", "y": 292.5 },
"rotation=14": { "model": "block/crimson_sign", "y": 315 },
"rotation=15": { "model": "block/crimson_sign", "y": 337.5 }
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"variants": {
"facing=north": { "model": "block/crimson_wall_sign", "y" : 180 },
"facing=south": { "model": "block/crimson_wall_sign", "y": 0 },
"facing=east": { "model": "block/crimson_wall_sign", "y": 270 },
"facing=west": { "model": "block/crimson_wall_sign", "y": 90 }
}
}
Loading