#!/usr/bin/env bash # Gera o .tic de um cartucho TIC-80 que o autor publica so como texto (.lua com os blocos # "-- ", "-- " etc.), pelo conversor versionado tic80-lua-to-tic.py (que grava os mesmos # chunks do TIC-80 1.2.0; conferido contra um cart.tic gravado pelo proprio TIC-80). Sem nenhuma mudanca # no codigo nem nos dados do autor. Dois builds seguidos dao o mesmo sha256. # # src/FredGames.Bundler/Builds/build-tic80-lua.sh humanitys-helper # src/FredGames.Bundler/Builds/build-tic80-lua.sh what-remains-of-me # # Saida: artifacts/build/-/{.lua,.tic,tic80-lua-to-tic.py,build-tic80-lua.sh} set -euo pipefail case "${1:-}" in humanitys-helper) REPO=ronynn/helper-of-humanity COMMIT=ad1aa73f700d557f9eb0bbd2ec6bd41e3706cd8b FILE=humanity-helper.lua SHA256=41aa6be8fa7a961c7c3a98656bb2e055bf895018e134adba4f56aee664f11042 ;; what-remains-of-me) REPO=ronynn/Game-Jam-Submissions COMMIT=ce24a69a6429c250d81bea7699dbbd01c0fb2860 FILE=wrom/what-remains-of-me-ifcomp-2021.lua SHA256=49c0189e3ba6d28935924a9c295d81a05e90443cb8b4a985daa346790031db25 ;; *) echo "uso: $0 humanitys-helper|what-remains-of-me" >&2; exit 1 ;; esac slug=$1 here="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" root="$(git -C "$here" rev-parse --show-toplevel 2>/dev/null || pwd)" out="$root/artifacts/build/$slug-${COMMIT:0:7}" lua="$out/$(basename "$FILE")" mkdir -p "$out" if [ ! -f "$lua" ]; then curl -fsSL "https://raw.githubusercontent.com/$REPO/$COMMIT/$FILE" -o "$lua" fi echo "$SHA256 $lua" | shasum -a 256 -c - >/dev/null python3 -I "$here/tic80-lua-to-tic.py" "$lua" "$out/$slug.tic" cp "$here/tic80-lua-to-tic.py" "$here/build-tic80-lua.sh" "$out/" shasum -a 256 "$out/$slug.tic"