~starkingdoms/starkingdoms

0134d856a79626d7bfa16453cf6b7bac49e7ac38 — core 2 years ago 2f2dc27
fix spacetime builds in nested subdirectories
M assets/dist/spritesheet-125.png => assets/dist/spritesheet-125.png +0 -0
M assets/dist/spritesheet-125.ron => assets/dist/spritesheet-125.ron +1 -1
@@ 1,1 1,1 @@
(texture_width:256,texture_height:1408,sprites:[(name:"earth",x:0,y:0,width:256,height:256,offsets:None,),(name:"ecothruster_on",x:0,y:256,width:64,height:64,offsets:None,),(name:"landingleg",x:0,y:320,width:64,height:64,offsets:None,),(name:"superthruster_on",x:0,y:384,width:64,height:64,offsets:None,),(name:"cargo_on",x:0,y:448,width:64,height:64,offsets:None,),(name:"autoplr_cfg",x:0,y:512,width:64,height:64,offsets:None,),(name:"landingthruster_off",x:0,y:576,width:64,height:64,offsets:None,),(name:"superthruster_off",x:0,y:640,width:64,height:64,offsets:None,),(name:"autoplr_on",x:0,y:704,width:64,height:64,offsets:None,),(name:"thruster_off",x:0,y:768,width:64,height:64,offsets:None,),(name:"cargo_off",x:0,y:832,width:64,height:64,offsets:None,),(name:"thruster_on",x:0,y:896,width:64,height:64,offsets:None,),(name:"autoplr_error",x:0,y:960,width:64,height:64,offsets:None,),(name:"hub_off",x:0,y:1024,width:64,height:64,offsets:None,),(name:"powerhub_off",x:0,y:1088,width:64,height:64,offsets:None,),(name:"hearty",x:0,y:1152,width:64,height:64,offsets:None,),(name:"hub_on",x:0,y:1216,width:64,height:64,offsets:None,),(name:"landingthruster_on",x:0,y:1280,width:64,height:64,offsets:None,),(name:"powerhub_on",x:0,y:1344,width:64,height:64,offsets:None,),],)
\ No newline at end of file
(texture_width:256,texture_height:1408,sprites:[(name:"earth",x:0,y:0,width:256,height:256,offsets:None,),(name:"autoplr_cfg",x:0,y:256,width:64,height:64,offsets:None,),(name:"superthruster_on",x:0,y:320,width:64,height:64,offsets:None,),(name:"hearty",x:0,y:384,width:64,height:64,offsets:None,),(name:"ecothruster_on",x:0,y:448,width:64,height:64,offsets:None,),(name:"superthruster_off",x:0,y:512,width:64,height:64,offsets:None,),(name:"landingleg",x:0,y:576,width:64,height:64,offsets:None,),(name:"hub_off",x:0,y:640,width:64,height:64,offsets:None,),(name:"powerhub_off",x:0,y:704,width:64,height:64,offsets:None,),(name:"powerhub_on",x:0,y:768,width:64,height:64,offsets:None,),(name:"cargo_off",x:0,y:832,width:64,height:64,offsets:None,),(name:"thruster_on",x:0,y:896,width:64,height:64,offsets:None,),(name:"landingthruster_on",x:0,y:960,width:64,height:64,offsets:None,),(name:"landingthruster_off",x:0,y:1024,width:64,height:64,offsets:None,),(name:"autoplr_on",x:0,y:1088,width:64,height:64,offsets:None,),(name:"thruster_off",x:0,y:1152,width:64,height:64,offsets:None,),(name:"cargo_on",x:0,y:1216,width:64,height:64,offsets:None,),(name:"autoplr_error",x:0,y:1280,width:64,height:64,offsets:None,),(name:"hub_on",x:0,y:1344,width:64,height:64,offsets:None,),],)
\ No newline at end of file

M assets/dist/spritesheet-375.png => assets/dist/spritesheet-375.png +0 -0
M assets/dist/spritesheet-375.ron => assets/dist/spritesheet-375.ron +1 -1
@@ 1,1 1,1 @@
(texture_width:768,texture_height:4224,sprites:[(name:"earth",x:0,y:0,width:768,height:768,offsets:None,),(name:"ecothruster_on",x:0,y:768,width:192,height:192,offsets:None,),(name:"landingleg",x:0,y:960,width:192,height:192,offsets:None,),(name:"superthruster_on",x:0,y:1152,width:192,height:192,offsets:None,),(name:"cargo_on",x:0,y:1344,width:192,height:192,offsets:None,),(name:"autoplr_cfg",x:0,y:1536,width:192,height:192,offsets:None,),(name:"landingthruster_off",x:0,y:1728,width:192,height:192,offsets:None,),(name:"superthruster_off",x:0,y:1920,width:192,height:192,offsets:None,),(name:"autoplr_on",x:0,y:2112,width:192,height:192,offsets:None,),(name:"thruster_off",x:0,y:2304,width:192,height:192,offsets:None,),(name:"cargo_off",x:0,y:2496,width:192,height:192,offsets:None,),(name:"thruster_on",x:0,y:2688,width:192,height:192,offsets:None,),(name:"autoplr_error",x:0,y:2880,width:192,height:192,offsets:None,),(name:"hub_off",x:0,y:3072,width:192,height:192,offsets:None,),(name:"powerhub_off",x:0,y:3264,width:192,height:192,offsets:None,),(name:"hearty",x:0,y:3456,width:192,height:192,offsets:None,),(name:"hub_on",x:0,y:3648,width:192,height:192,offsets:None,),(name:"landingthruster_on",x:0,y:3840,width:192,height:192,offsets:None,),(name:"powerhub_on",x:0,y:4032,width:192,height:192,offsets:None,),],)
\ No newline at end of file
(texture_width:768,texture_height:4224,sprites:[(name:"earth",x:0,y:0,width:768,height:768,offsets:None,),(name:"autoplr_cfg",x:0,y:768,width:192,height:192,offsets:None,),(name:"superthruster_on",x:0,y:960,width:192,height:192,offsets:None,),(name:"hearty",x:0,y:1152,width:192,height:192,offsets:None,),(name:"ecothruster_on",x:0,y:1344,width:192,height:192,offsets:None,),(name:"superthruster_off",x:0,y:1536,width:192,height:192,offsets:None,),(name:"landingleg",x:0,y:1728,width:192,height:192,offsets:None,),(name:"hub_off",x:0,y:1920,width:192,height:192,offsets:None,),(name:"powerhub_off",x:0,y:2112,width:192,height:192,offsets:None,),(name:"powerhub_on",x:0,y:2304,width:192,height:192,offsets:None,),(name:"cargo_off",x:0,y:2496,width:192,height:192,offsets:None,),(name:"thruster_on",x:0,y:2688,width:192,height:192,offsets:None,),(name:"landingthruster_on",x:0,y:2880,width:192,height:192,offsets:None,),(name:"landingthruster_off",x:0,y:3072,width:192,height:192,offsets:None,),(name:"autoplr_on",x:0,y:3264,width:192,height:192,offsets:None,),(name:"thruster_off",x:0,y:3456,width:192,height:192,offsets:None,),(name:"cargo_on",x:0,y:3648,width:192,height:192,offsets:None,),(name:"autoplr_error",x:0,y:3840,width:192,height:192,offsets:None,),(name:"hub_on",x:0,y:4032,width:192,height:192,offsets:None,),],)
\ No newline at end of file

M assets/dist/spritesheet-full.png => assets/dist/spritesheet-full.png +0 -0
M assets/dist/spritesheet-full.ron => assets/dist/spritesheet-full.ron +1 -1
@@ 1,1 1,1 @@
(texture_width:3072,texture_height:4096,sprites:[(name:"earth",x:0,y:0,width:2048,height:2048,offsets:None,),(name:"ecothruster_on",x:0,y:2048,width:512,height:512,offsets:None,),(name:"landingleg",x:0,y:2560,width:512,height:512,offsets:None,),(name:"superthruster_on",x:0,y:3072,width:512,height:512,offsets:None,),(name:"cargo_on",x:0,y:3584,width:512,height:512,offsets:None,),(name:"autoplr_cfg",x:512,y:2048,width:512,height:512,offsets:None,),(name:"landingthruster_off",x:512,y:2560,width:512,height:512,offsets:None,),(name:"superthruster_off",x:512,y:3072,width:512,height:512,offsets:None,),(name:"autoplr_on",x:512,y:3584,width:512,height:512,offsets:None,),(name:"thruster_off",x:1024,y:2048,width:512,height:512,offsets:None,),(name:"cargo_off",x:1024,y:2560,width:512,height:512,offsets:None,),(name:"thruster_on",x:1024,y:3072,width:512,height:512,offsets:None,),(name:"autoplr_error",x:1024,y:3584,width:512,height:512,offsets:None,),(name:"hub_off",x:1536,y:2048,width:512,height:512,offsets:None,),(name:"powerhub_off",x:1536,y:2560,width:512,height:512,offsets:None,),(name:"hearty",x:1536,y:3072,width:512,height:512,offsets:None,),(name:"hub_on",x:1536,y:3584,width:512,height:512,offsets:None,),(name:"landingthruster_on",x:2048,y:0,width:512,height:512,offsets:None,),(name:"powerhub_on",x:2560,y:0,width:512,height:512,offsets:None,),],)
\ No newline at end of file
(texture_width:3072,texture_height:4096,sprites:[(name:"earth",x:0,y:0,width:2048,height:2048,offsets:None,),(name:"autoplr_cfg",x:0,y:2048,width:512,height:512,offsets:None,),(name:"superthruster_on",x:0,y:2560,width:512,height:512,offsets:None,),(name:"hearty",x:0,y:3072,width:512,height:512,offsets:None,),(name:"ecothruster_on",x:0,y:3584,width:512,height:512,offsets:None,),(name:"superthruster_off",x:512,y:2048,width:512,height:512,offsets:None,),(name:"landingleg",x:512,y:2560,width:512,height:512,offsets:None,),(name:"hub_off",x:512,y:3072,width:512,height:512,offsets:None,),(name:"powerhub_off",x:512,y:3584,width:512,height:512,offsets:None,),(name:"powerhub_on",x:1024,y:2048,width:512,height:512,offsets:None,),(name:"cargo_off",x:1024,y:2560,width:512,height:512,offsets:None,),(name:"thruster_on",x:1024,y:3072,width:512,height:512,offsets:None,),(name:"landingthruster_on",x:1024,y:3584,width:512,height:512,offsets:None,),(name:"landingthruster_off",x:1536,y:2048,width:512,height:512,offsets:None,),(name:"autoplr_on",x:1536,y:2560,width:512,height:512,offsets:None,),(name:"thruster_off",x:1536,y:3072,width:512,height:512,offsets:None,),(name:"cargo_on",x:1536,y:3584,width:512,height:512,offsets:None,),(name:"autoplr_error",x:2048,y:0,width:512,height:512,offsets:None,),(name:"hub_on",x:2560,y:0,width:512,height:512,offsets:None,),],)
\ No newline at end of file

M spacetime => spacetime +2 -2
@@ 6,9 6,9 @@ SCRIPT_PATH=$(readlink -f "${BASH_SOURCE:-$0}")
SCRIPT_DIR=$(dirname "$SCRIPT_PATH")

exec_spacetime() {
  # args: target, environment, build root
  # args: target, environment, build root, verbose?
  echo "[*] Running configure command: 'python3 $SCRIPT_DIR/spacetime_py/spacetime.py $1 $2 $SCRIPT_DIR'"
  python3 "$SCRIPT_DIR/spacetime_py/spacetime.py" "$1" "$2" "$SCRIPT_DIR"
  python3 "$SCRIPT_DIR/spacetime_py/spacetime.py" "$1" "$2" "$SCRIPT_DIR" "$SPACETIME_VERBOSE"
}

exec_ninja() {

M spacetime_py/spacetime.py => spacetime_py/spacetime.py +10 -3
@@ 8,7 8,7 @@ def scan_assets(build_root):
    assets = []
    for entry in os.scandir(f'{build_root}/assets/src'):
        if entry.is_file() and entry.name.endswith('.ink.svg'):
            assets.append(f'{build_root}/assets/src/{entry.name}')
            assets.append(f'{entry.name}')
    print(f'[spacetime] Found {len(assets)} assets')
    return assets



@@ 18,7 18,6 @@ asset_override = {
    'earth.ink.svg': 2048
}


def gen_inkscape_rules_for_asset_size(size, writer):
    writer.rule(f'inkscape_{size}px_full', f'inkscape -w {size * 1} -h {size * 1} $in -o $out')
    writer.rule(f'inkscape_{size}px_375', f'inkscape -w {int(size * 0.375)} -h {int(size * 0.375)} $in -o $out')


@@ 39,7 38,7 @@ def asset_size(asset):


def gen_inkscape_rules_for_asset(root, asset, writer, files_375, files_full, files_125):
    in_file = asset
    in_file = f'{root}/assets/src/{asset}'
    out_file_name = asset.split('.')[0].split('/')[-1]

    out_full = f'{root}/assets/final/full/{out_file_name}.png'


@@ 173,6 172,12 @@ def main():
    target = sys.argv[1]
    env = sys.argv[2]
    root = sys.argv[3]

    verbose = False
    if len(sys.argv) > 4:
        if sys.argv[4] == '-v':
            verbose = True

    print(f'[spacetime] Configuring ninja for PRIMARY_TARGET={target} with ENV={env}, BUILDROOT={root}')

    with open(f'{root}/build.ninja', 'w') as f:


@@ 183,6 188,8 @@ def main():

        if env == 'prod' or target == 'asset':
            assets = scan_assets(root)
            if verbose:
                print(f'[spacetime -v] discovered assets: {assets}')
            generate_assets_build_command(root, assets, writer)

        if target == 'client':