18 lines
1.1 KiB
Python
18 lines
1.1 KiB
Python
"""Tile the creator's 48x48 top and 48x16 side, without resampling either PNG."""
|
|
import json
|
|
from pathlib import Path
|
|
root=Path(__file__).resolve().parents[1]/'mods/sanctuary/src/main/resources/assets/sanctuary'
|
|
models=root/'models/block/metatable';models.mkdir(parents=True,exist_ok=True)
|
|
variants={}
|
|
for z in range(3):
|
|
for x in range(3):
|
|
part=x+3*z;faces={}
|
|
for d,u in [('north',2-x),('south',x),('east',2-z),('west',z)]:
|
|
faces[d]={'texture':'#side','cullface':d,'uv':[u*16/3,0,(u+1)*16/3,16]}
|
|
faces['up']={'texture':'#top','cullface':'up','uv':[x*16/3,z*16/3,(x+1)*16/3,(z+1)*16/3]}
|
|
faces['down']={'texture':'#bottom','cullface':'down','uv':[0,0,16,16]}
|
|
model={'textures':{'top':'sanctuary:block/metatable/top','side':'sanctuary:block/metatable/side','bottom':'minecraft:block/oak_planks','particle':'sanctuary:block/metatable/side'},'elements':[{'from':[0,0,0],'to':[16,16,16],'faces':faces}]}
|
|
(models/f'{part}.json').write_text(json.dumps(model,indent=2)+'\n')
|
|
variants[f'part={part}']={'model':f'sanctuary:block/metatable/{part}'}
|
|
(root/'blockstates/metatable.json').write_text(json.dumps({'variants':variants},indent=2)+'\n')
|