diff --git a/gulp/css.js b/gulp/css.js index 35f1a2b5..73a0a7cf 100644 --- a/gulp/css.js +++ b/gulp/css.js @@ -72,7 +72,8 @@ function gulptasksCSS($, gulp, buildFolder, browserSync) { ) .pipe($.rename("async-resources.css")) .pipe($.postcss(postcssPlugins(isProd, { cachebust }))) - .pipe(gulp.dest(buildFolder)); + .pipe(gulp.dest(buildFolder)) + .pipe(browserSync.stream()); } // Builds the css resources @@ -104,7 +105,8 @@ function gulptasksCSS($, gulp, buildFolder, browserSync) { ]) ) .pipe($.postcss(postcssPlugins(isProd, { cachebust }))) - .pipe(gulp.dest(buildFolder)); + .pipe(gulp.dest(buildFolder)) + .pipe(browserSync.stream()); } // Builds the css main diff --git a/gulp/gulpfile.js b/gulp/gulpfile.js index 0db3f729..3e03fcc7 100644 --- a/gulp/gulpfile.js +++ b/gulp/gulpfile.js @@ -1,325 +1,325 @@ -/* eslint-disable */ - -require("colors"); - -const gulp = require("gulp"); -const browserSync = require("browser-sync").create({}); -const path = require("path"); -const deleteEmpty = require("delete-empty"); -const execSync = require("child_process").execSync; - -const lfsOutput = execSync("git lfs install", { encoding: "utf-8" }); -if (!lfsOutput.toLowerCase().includes("git lfs initialized")) { - console.error(` - Git LFS is not installed, unable to build. - - To install Git LFS on Linux: - - Arch: - sudo pacman -S git-lfs - - Debian/Ubuntu: - sudo apt install git-lfs - - For other systems, see: - https://github.com/git-lfs/git-lfs/wiki/Installation - `); - process.exit(1); -} - -// Load other plugins dynamically -const $ = require("gulp-load-plugins")({ - scope: ["devDependencies"], - pattern: "*", -}); - -// Check environment variables - -const envVars = [ - "SHAPEZ_CLI_SERVER_HOST", - // "SHAPEZ_CLI_PHONEGAP_KEY", - "SHAPEZ_CLI_ALPHA_FTP_USER", - "SHAPEZ_CLI_ALPHA_FTP_PW", - "SHAPEZ_CLI_STAGING_FTP_USER", - "SHAPEZ_CLI_STAGING_FTP_PW", - "SHAPEZ_CLI_LIVE_FTP_USER", - "SHAPEZ_CLI_LIVE_FTP_PW", -]; - -for (let i = 0; i < envVars.length; ++i) { - if (!process.env[envVars[i]]) { - console.warn("Please set", envVars[i]); - // process.exit(1); - } -} - -const baseDir = path.join(__dirname, ".."); -const buildFolder = path.join(baseDir, "build"); - -const imgres = require("./image-resources"); -imgres.gulptasksImageResources($, gulp, buildFolder); - -const css = require("./css"); -css.gulptasksCSS($, gulp, buildFolder, browserSync); - -const sounds = require("./sounds"); -sounds.gulptasksSounds($, gulp, buildFolder); - -const js = require("./js"); -js.gulptasksJS($, gulp, buildFolder, browserSync); - -const html = require("./html"); -html.gulptasksHTML($, gulp, buildFolder, browserSync); - -const ftp = require("./ftp"); -ftp.gulptasksFTP($, gulp, buildFolder); - -const docs = require("./docs"); -docs.gulptasksDocs($, gulp, buildFolder); - -const standalone = require("./standalone"); -standalone.gulptasksStandalone($, gulp, buildFolder); - -const translations = require("./translations"); -translations.gulptasksTranslations($, gulp, buildFolder); - -// FIXME -// const cordova = require("./cordova"); -// cordova.gulptasksCordova($, gulp, buildFolder); - -///////////////////// BUILD TASKS ///////////////////// - -// Cleans up everything -gulp.task("utils.cleanBuildFolder", () => { - return gulp.src(buildFolder, { read: false, allowEmpty: true }).pipe($.clean({ force: true })); -}); -gulp.task("utils.cleanBuildTempFolder", () => { - return gulp - .src(path.join(__dirname, "..", "src", "js", "built-temp"), { read: false, allowEmpty: true }) - .pipe($.clean({ force: true })); -}); - -gulp.task("utils.cleanup", gulp.series("utils.cleanBuildFolder", "utils.cleanBuildTempFolder")); - -// Requires no uncomitted files -gulp.task("utils.requireCleanWorkingTree", cb => { - let output = $.trim(execSync("git status -su").toString("ascii")).replace(/\r/gi, "").split("\n"); - - // Filter files which are OK to be untracked - output = output - .map(x => x.replace(/[\r\n]+/gi, "")) - .filter(x => x.indexOf(".local.js") < 0) - .filter(x => x.length > 0); - if (output.length > 0) { - console.error("\n\nYou have unstaged changes, please commit everything first!"); - console.error("Unstaged files:"); - console.error(output.map(x => "'" + x + "'").join("\n")); - process.exit(1); - } - cb(); -}); - -gulp.task("utils.copyAdditionalBuildFiles", cb => { - const additionalFolder = path.join("additional_build_files"); - const additionalSrcGlobs = [ - path.join(additionalFolder, "**/*.*"), - path.join(additionalFolder, "**/.*"), - path.join(additionalFolder, "**/*"), - ]; - - return gulp.src(additionalSrcGlobs).pipe(gulp.dest(buildFolder)); -}); - -// Starts a webserver on the built directory (useful for testing prod build) -gulp.task("main.webserver", () => { - return gulp.src(buildFolder).pipe( - $.webserver({ - livereload: { - enable: true, - }, - directoryListing: false, - open: true, - port: 3005, - }) - ); -}); - -function serve({ standalone }) { - browserSync.init({ - server: buildFolder, - port: 3005, - ghostMode: { - clicks: false, - scroll: false, - location: false, - forms: false, - }, - logLevel: "info", - logPrefix: "BS", - online: false, - xip: false, - notify: false, - reloadDebounce: 100, - reloadOnRestart: true, - watchEvents: ["add", "change"], - }); - - // Watch .scss files, those trigger a css rebuild - gulp.watch(["../src/**/*.scss"], gulp.series("css.dev")); - - // Watch .html files, those trigger a html rebuild - gulp.watch("../src/**/*.html", gulp.series(standalone ? "html.standalone-dev" : "html.dev")); - - // Watch sound files - // gulp.watch(["../res_raw/sounds/**/*.mp3", "../res_raw/sounds/**/*.wav"], gulp.series("sounds.dev")); - - // Watch translations - gulp.watch("../translations/**/*.yaml", gulp.series("translations.convertToJson")); - - gulp.watch( - ["../res_raw/sounds/sfx/*.mp3", "../res_raw/sounds/sfx/*.wav"], - gulp.series("sounds.sfx", "sounds.copy") - ); - gulp.watch( - ["../res_raw/sounds/music/*.mp3", "../res_raw/sounds/music/*.wav"], - gulp.series("sounds.music", "sounds.copy") - ); - - // Watch resource files and copy them on change - gulp.watch(imgres.nonImageResourcesGlobs, gulp.series("imgres.copyNonImageResources")); - gulp.watch(imgres.imageResourcesGlobs, gulp.series("imgres.copyImageResources")); - - // Watch .atlas files and recompile the atlas on change - gulp.watch("../res_built/atlas/*.json", gulp.series("imgres.atlas")); - - // Watch the build folder and reload when anything changed - const extensions = ["html", "js", "png", "gif", "jpg", "svg", "mp3", "ico", "woff2", "json"]; - gulp.watch(extensions.map(ext => path.join(buildFolder, "**", "*." + ext))).on("change", function (path) { - return gulp.src(path).pipe(browserSync.reload({ stream: true })); - }); - - gulp.watch("../src/js/built-temp/*.json").on("change", function (path) { - return gulp.src(path).pipe(browserSync.reload({ stream: true })); - }); - - // Start the webpack watching server (Will never return) - if (standalone) { - gulp.series("js.standalone-dev.watch")(() => true); - } else { - gulp.series("js.dev.watch")(() => true); - } -} - -///////////////////// RUNNABLE TASKS ///////////////////// - -// Pre and postbuild -gulp.task("step.baseResources", gulp.series("imgres.allOptimized")); -gulp.task("step.deleteEmpty", cb => { - deleteEmpty.sync(buildFolder); - cb(); -}); - -gulp.task("step.postbuild", gulp.series("imgres.cleanupUnusedCssInlineImages", "step.deleteEmpty")); - -// Builds everything (dev) -gulp.task( - "build.dev", - gulp.series( - "utils.cleanup", - "utils.copyAdditionalBuildFiles", - "imgres.atlas", - "sounds.dev", - "imgres.copyImageResources", - "imgres.copyNonImageResources", - "translations.fullBuild", - "css.dev", - "html.dev" - ) -); - -// Builds everything (standalone -dev) -gulp.task( - "build.standalone.dev", - gulp.series( - "utils.cleanup", - "imgres.atlas", - "sounds.dev", - "imgres.copyImageResources", - "imgres.copyNonImageResources", - "translations.fullBuild", - "js.standalone-dev", - "css.dev", - "html.standalone-dev" - ) -); - -// Builds everything (staging) -gulp.task("step.staging.code", gulp.series("sounds.fullbuild", "translations.fullBuild", "js.staging")); -gulp.task( - "step.staging.mainbuild", - gulp.parallel("utils.copyAdditionalBuildFiles", "step.baseResources", "step.staging.code") -); -gulp.task("step.staging.all", gulp.series("step.staging.mainbuild", "css.prod", "html.staging")); -gulp.task("build.staging", gulp.series("utils.cleanup", "step.staging.all", "step.postbuild")); - -// Builds everything (prod) -gulp.task("step.prod.code", gulp.series("sounds.fullbuild", "translations.fullBuild", "js.prod")); -gulp.task( - "step.prod.mainbuild", - gulp.parallel("utils.copyAdditionalBuildFiles", "step.baseResources", "step.prod.code") -); -gulp.task("step.prod.all", gulp.series("step.prod.mainbuild", "css.prod", "html.prod")); -gulp.task("build.prod", gulp.series("utils.cleanup", "step.prod.all", "step.postbuild")); - -// Builds everything (standalone-beta) -gulp.task( - "step.standalone-beta.code", - gulp.series("sounds.fullbuildHQ", "translations.fullBuild", "js.standalone-beta") -); -gulp.task("step.standalone-beta.mainbuild", gulp.parallel("step.baseResources", "step.standalone-beta.code")); -gulp.task( - "step.standalone-beta.all", - gulp.series("step.standalone-beta.mainbuild", "css.prod-standalone", "html.standalone-beta") -); -gulp.task( - "build.standalone-beta", - gulp.series("utils.cleanup", "step.standalone-beta.all", "step.postbuild") -); - -// Builds everything (standalone-prod) -gulp.task( - "step.standalone-prod.code", - gulp.series("sounds.fullbuildHQ", "translations.fullBuild", "js.standalone-prod") -); -gulp.task("step.standalone-prod.mainbuild", gulp.parallel("step.baseResources", "step.standalone-prod.code")); -gulp.task( - "step.standalone-prod.all", - gulp.series("step.standalone-prod.mainbuild", "css.prod-standalone", "html.standalone-prod") -); -gulp.task( - "build.standalone-prod", - gulp.series("utils.cleanup", "step.standalone-prod.all", "step.postbuild") -); - -// Deploying! -gulp.task( - "main.deploy.alpha", - gulp.series("utils.requireCleanWorkingTree", "build.staging", "ftp.upload.alpha") -); -gulp.task( - "main.deploy.staging", - gulp.series("utils.requireCleanWorkingTree", "build.staging", "ftp.upload.staging") -); -gulp.task("main.deploy.prod", gulp.series("utils.requireCleanWorkingTree", "build.prod", "ftp.upload.prod")); -gulp.task("main.deploy.all", gulp.series("main.deploy.staging", "main.deploy.prod")); -gulp.task("main.standalone", gulp.series("build.standalone-prod", "standalone.package.prod")); - -// Live-development -gulp.task( - "main.serveDev", - gulp.series("build.dev", () => serve({ standalone: false })) -); -gulp.task( - "main.serveStandalone", - gulp.series("build.standalone.dev", () => serve({ standalone: true })) -); - -gulp.task("default", gulp.series("main.serveDev")); +/* eslint-disable */ + +require("colors"); + +const gulp = require("gulp"); +const browserSync = require("browser-sync").create({}); +const path = require("path"); +const deleteEmpty = require("delete-empty"); +const execSync = require("child_process").execSync; + +const lfsOutput = execSync("git lfs install", { encoding: "utf-8" }); +if (!lfsOutput.toLowerCase().includes("git lfs initialized")) { + console.error(` + Git LFS is not installed, unable to build. + + To install Git LFS on Linux: + - Arch: + sudo pacman -S git-lfs + - Debian/Ubuntu: + sudo apt install git-lfs + + For other systems, see: + https://github.com/git-lfs/git-lfs/wiki/Installation + `); + process.exit(1); +} + +// Load other plugins dynamically +const $ = require("gulp-load-plugins")({ + scope: ["devDependencies"], + pattern: "*", +}); + +// Check environment variables + +const envVars = [ + "SHAPEZ_CLI_SERVER_HOST", + // "SHAPEZ_CLI_PHONEGAP_KEY", + "SHAPEZ_CLI_ALPHA_FTP_USER", + "SHAPEZ_CLI_ALPHA_FTP_PW", + "SHAPEZ_CLI_STAGING_FTP_USER", + "SHAPEZ_CLI_STAGING_FTP_PW", + "SHAPEZ_CLI_LIVE_FTP_USER", + "SHAPEZ_CLI_LIVE_FTP_PW", +]; + +for (let i = 0; i < envVars.length; ++i) { + if (!process.env[envVars[i]]) { + console.warn("Please set", envVars[i]); + // process.exit(1); + } +} + +const baseDir = path.join(__dirname, ".."); +const buildFolder = path.join(baseDir, "build"); + +const imgres = require("./image-resources"); +imgres.gulptasksImageResources($, gulp, buildFolder); + +const css = require("./css"); +css.gulptasksCSS($, gulp, buildFolder, browserSync); + +const sounds = require("./sounds"); +sounds.gulptasksSounds($, gulp, buildFolder); + +const js = require("./js"); +js.gulptasksJS($, gulp, buildFolder, browserSync); + +const html = require("./html"); +html.gulptasksHTML($, gulp, buildFolder, browserSync); + +const ftp = require("./ftp"); +ftp.gulptasksFTP($, gulp, buildFolder); + +const docs = require("./docs"); +docs.gulptasksDocs($, gulp, buildFolder); + +const standalone = require("./standalone"); +standalone.gulptasksStandalone($, gulp, buildFolder); + +const translations = require("./translations"); +translations.gulptasksTranslations($, gulp, buildFolder); + +// FIXME +// const cordova = require("./cordova"); +// cordova.gulptasksCordova($, gulp, buildFolder); + +///////////////////// BUILD TASKS ///////////////////// + +// Cleans up everything +gulp.task("utils.cleanBuildFolder", () => { + return gulp.src(buildFolder, { read: false, allowEmpty: true }).pipe($.clean({ force: true })); +}); +gulp.task("utils.cleanBuildTempFolder", () => { + return gulp + .src(path.join(__dirname, "..", "src", "js", "built-temp"), { read: false, allowEmpty: true }) + .pipe($.clean({ force: true })); +}); + +gulp.task("utils.cleanup", gulp.series("utils.cleanBuildFolder", "utils.cleanBuildTempFolder")); + +// Requires no uncomitted files +gulp.task("utils.requireCleanWorkingTree", cb => { + let output = $.trim(execSync("git status -su").toString("ascii")).replace(/\r/gi, "").split("\n"); + + // Filter files which are OK to be untracked + output = output + .map(x => x.replace(/[\r\n]+/gi, "")) + .filter(x => x.indexOf(".local.js") < 0) + .filter(x => x.length > 0); + if (output.length > 0) { + console.error("\n\nYou have unstaged changes, please commit everything first!"); + console.error("Unstaged files:"); + console.error(output.map(x => "'" + x + "'").join("\n")); + process.exit(1); + } + cb(); +}); + +gulp.task("utils.copyAdditionalBuildFiles", cb => { + const additionalFolder = path.join("additional_build_files"); + const additionalSrcGlobs = [ + path.join(additionalFolder, "**/*.*"), + path.join(additionalFolder, "**/.*"), + path.join(additionalFolder, "**/*"), + ]; + + return gulp.src(additionalSrcGlobs).pipe(gulp.dest(buildFolder)); +}); + +// Starts a webserver on the built directory (useful for testing prod build) +gulp.task("main.webserver", () => { + return gulp.src(buildFolder).pipe( + $.webserver({ + livereload: { + enable: true, + }, + directoryListing: false, + open: true, + port: 3005, + }) + ); +}); + +function serve({ standalone }) { + browserSync.init({ + server: buildFolder, + port: 3005, + ghostMode: { + clicks: false, + scroll: false, + location: false, + forms: false, + }, + logLevel: "info", + logPrefix: "BS", + online: false, + xip: false, + notify: false, + reloadDebounce: 100, + reloadOnRestart: true, + watchEvents: ["add", "change"], + }); + + // Watch .scss files, those trigger a css rebuild + gulp.watch(["../src/**/*.scss"], gulp.series("css.dev")); + + // Watch .html files, those trigger a html rebuild + gulp.watch("../src/**/*.html", gulp.series(standalone ? "html.standalone-dev" : "html.dev")); + + // Watch sound files + // gulp.watch(["../res_raw/sounds/**/*.mp3", "../res_raw/sounds/**/*.wav"], gulp.series("sounds.dev")); + + // Watch translations + gulp.watch("../translations/**/*.yaml", gulp.series("translations.convertToJson")); + + gulp.watch( + ["../res_raw/sounds/sfx/*.mp3", "../res_raw/sounds/sfx/*.wav"], + gulp.series("sounds.sfx", "sounds.copy") + ); + gulp.watch( + ["../res_raw/sounds/music/*.mp3", "../res_raw/sounds/music/*.wav"], + gulp.series("sounds.music", "sounds.copy") + ); + + // Watch resource files and copy them on change + gulp.watch(imgres.nonImageResourcesGlobs, gulp.series("imgres.copyNonImageResources")); + gulp.watch(imgres.imageResourcesGlobs, gulp.series("imgres.copyImageResources")); + + // Watch .atlas files and recompile the atlas on change + gulp.watch("../res_built/atlas/*.json", gulp.series("imgres.atlas")); + + // Watch the build folder and reload when anything changed + const extensions = ["html", "js", "png", "gif", "jpg", "svg", "mp3", "ico", "woff2", "json"]; + gulp.watch(extensions.map(ext => path.join(buildFolder, "**", "*." + ext))).on("change", function (path) { + return gulp.src(path).pipe(browserSync.reload({ stream: true })); + }); + + gulp.watch("../src/js/built-temp/*.json").on("change", function (path) { + return gulp.src(path).pipe(browserSync.reload({ stream: true })); + }); + + // Start the webpack watching server (Will never return) + if (standalone) { + gulp.series("js.standalone-dev.watch")(() => true); + } else { + gulp.series("js.dev.watch")(() => true); + } +} + +///////////////////// RUNNABLE TASKS ///////////////////// + +// Pre and postbuild +gulp.task("step.baseResources", gulp.series("imgres.allOptimized")); +gulp.task("step.deleteEmpty", cb => { + deleteEmpty.sync(buildFolder); + cb(); +}); + +gulp.task("step.postbuild", gulp.series("imgres.cleanupUnusedCssInlineImages", "step.deleteEmpty")); + +// Builds everything (dev) +gulp.task( + "build.dev", + gulp.series( + "utils.cleanup", + "utils.copyAdditionalBuildFiles", + "imgres.atlas", + "sounds.dev", + "imgres.copyImageResources", + "imgres.copyNonImageResources", + "translations.fullBuild", + "css.dev", + "html.dev" + ) +); + +// Builds everything (standalone -dev) +gulp.task( + "build.standalone.dev", + gulp.series( + "utils.cleanup", + "imgres.atlas", + "sounds.dev", + "imgres.copyImageResources", + "imgres.copyNonImageResources", + "translations.fullBuild", + "js.standalone-dev", + "css.dev", + "html.standalone-dev" + ) +); + +// Builds everything (staging) +gulp.task("step.staging.code", gulp.series("sounds.fullbuild", "translations.fullBuild", "js.staging")); +gulp.task( + "step.staging.mainbuild", + gulp.parallel("utils.copyAdditionalBuildFiles", "step.baseResources", "step.staging.code") +); +gulp.task("step.staging.all", gulp.series("step.staging.mainbuild", "css.prod", "html.staging")); +gulp.task("build.staging", gulp.series("utils.cleanup", "step.staging.all", "step.postbuild")); + +// Builds everything (prod) +gulp.task("step.prod.code", gulp.series("sounds.fullbuild", "translations.fullBuild", "js.prod")); +gulp.task( + "step.prod.mainbuild", + gulp.parallel("utils.copyAdditionalBuildFiles", "step.baseResources", "step.prod.code") +); +gulp.task("step.prod.all", gulp.series("step.prod.mainbuild", "css.prod", "html.prod")); +gulp.task("build.prod", gulp.series("utils.cleanup", "step.prod.all", "step.postbuild")); + +// Builds everything (standalone-beta) +gulp.task( + "step.standalone-beta.code", + gulp.series("sounds.fullbuildHQ", "translations.fullBuild", "js.standalone-beta") +); +gulp.task("step.standalone-beta.mainbuild", gulp.parallel("step.baseResources", "step.standalone-beta.code")); +gulp.task( + "step.standalone-beta.all", + gulp.series("step.standalone-beta.mainbuild", "css.prod-standalone", "html.standalone-beta") +); +gulp.task( + "build.standalone-beta", + gulp.series("utils.cleanup", "step.standalone-beta.all", "step.postbuild") +); + +// Builds everything (standalone-prod) +gulp.task( + "step.standalone-prod.code", + gulp.series("sounds.fullbuildHQ", "translations.fullBuild", "js.standalone-prod") +); +gulp.task("step.standalone-prod.mainbuild", gulp.parallel("step.baseResources", "step.standalone-prod.code")); +gulp.task( + "step.standalone-prod.all", + gulp.series("step.standalone-prod.mainbuild", "css.prod-standalone", "html.standalone-prod") +); +gulp.task( + "build.standalone-prod", + gulp.series("utils.cleanup", "step.standalone-prod.all", "step.postbuild") +); + +// Deploying! +gulp.task( + "main.deploy.alpha", + gulp.series("utils.requireCleanWorkingTree", "build.staging", "ftp.upload.alpha") +); +gulp.task( + "main.deploy.staging", + gulp.series("utils.requireCleanWorkingTree", "build.staging", "ftp.upload.staging") +); +gulp.task("main.deploy.prod", gulp.series("utils.requireCleanWorkingTree", "build.prod", "ftp.upload.prod")); +gulp.task("main.deploy.all", gulp.series("main.deploy.staging", "main.deploy.prod")); +gulp.task("main.standalone", gulp.series("build.standalone-prod", "standalone.package.prod")); + +// Live-development +gulp.task( + "main.serveDev", + gulp.series("build.dev", () => serve({ standalone: false })) +); +gulp.task( + "main.serveStandalone", + gulp.series("build.standalone.dev", () => serve({ standalone: true })) +); + +gulp.task("default", gulp.series("main.serveDev")); diff --git a/res/ui/building_tutorials/constant_signal.png b/res/ui/building_tutorials/constant_signal.png new file mode 100644 index 00000000..6db1ebf4 Binary files /dev/null and b/res/ui/building_tutorials/constant_signal.png differ diff --git a/res/ui/building_tutorials/display.png b/res/ui/building_tutorials/display.png new file mode 100644 index 00000000..de5c7ed7 Binary files /dev/null and b/res/ui/building_tutorials/display.png differ diff --git a/res/ui/building_tutorials/lever.png b/res/ui/building_tutorials/lever.png new file mode 100644 index 00000000..da7551f2 Binary files /dev/null and b/res/ui/building_tutorials/lever.png differ diff --git a/res/ui/building_tutorials/rotater-ccw.png b/res/ui/building_tutorials/rotater-ccw.png index a76b7179..cf13f63b 100644 Binary files a/res/ui/building_tutorials/rotater-ccw.png and b/res/ui/building_tutorials/rotater-ccw.png differ diff --git a/res/ui/building_tutorials/rotater-fl.png b/res/ui/building_tutorials/rotater-fl.png deleted file mode 100644 index cb6cee0d..00000000 Binary files a/res/ui/building_tutorials/rotater-fl.png and /dev/null differ diff --git a/res/ui/building_tutorials/rotater-rotate180.png b/res/ui/building_tutorials/rotater-rotate180.png new file mode 100644 index 00000000..b2681662 Binary files /dev/null and b/res/ui/building_tutorials/rotater-rotate180.png differ diff --git a/res/ui/building_tutorials/rotater.png b/res/ui/building_tutorials/rotater.png index c8ecb8b0..0726f2b1 100644 Binary files a/res/ui/building_tutorials/rotater.png and b/res/ui/building_tutorials/rotater.png differ diff --git a/res_built/atlas/atlas0_hq.json b/res_built/atlas/atlas0_hq.json index 31aa01db..6dbf5d17 100644 --- a/res_built/atlas/atlas0_hq.json +++ b/res_built/atlas/atlas0_hq.json @@ -2,7 +2,7 @@ "sprites/belt/built/forward_0.png": { - "frame": {"x":1867,"y":593,"w":116,"h":144}, + "frame": {"x":1239,"y":1197,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -10,7 +10,7 @@ }, "sprites/belt/built/forward_1.png": { - "frame": {"x":1241,"y":1197,"w":116,"h":144}, + "frame": {"x":1361,"y":1195,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -18,7 +18,7 @@ }, "sprites/belt/built/forward_2.png": { - "frame": {"x":1558,"y":753,"w":116,"h":144}, + "frame": {"x":1436,"y":753,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -26,7 +26,7 @@ }, "sprites/belt/built/forward_3.png": { - "frame": {"x":1555,"y":903,"w":116,"h":144}, + "frame": {"x":1433,"y":903,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -34,7 +34,7 @@ }, "sprites/belt/built/forward_4.png": { - "frame": {"x":1562,"y":1053,"w":116,"h":144}, + "frame": {"x":1483,"y":1195,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -42,7 +42,7 @@ }, "sprites/belt/built/forward_5.png": { - "frame": {"x":1680,"y":753,"w":116,"h":144}, + "frame": {"x":1501,"y":1345,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -50,7 +50,7 @@ }, "sprites/belt/built/forward_6.png": { - "frame": {"x":1677,"y":903,"w":116,"h":144}, + "frame": {"x":1510,"y":1495,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -58,7 +58,7 @@ }, "sprites/belt/built/forward_7.png": { - "frame": {"x":1684,"y":1053,"w":116,"h":144}, + "frame": {"x":1555,"y":903,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -66,7 +66,7 @@ }, "sprites/belt/built/forward_8.png": { - "frame": {"x":1802,"y":743,"w":116,"h":144}, + "frame": {"x":1696,"y":1053,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -74,7 +74,7 @@ }, "sprites/belt/built/forward_9.png": { - "frame": {"x":1924,"y":743,"w":116,"h":144}, + "frame": {"x":1623,"y":1339,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -82,7 +82,7 @@ }, "sprites/belt/built/forward_10.png": { - "frame": {"x":1363,"y":1195,"w":116,"h":144}, + "frame": {"x":1379,"y":1345,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -90,7 +90,7 @@ }, "sprites/belt/built/forward_11.png": { - "frame": {"x":845,"y":1548,"w":116,"h":144}, + "frame": {"x":706,"y":1711,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -98,7 +98,7 @@ }, "sprites/belt/built/forward_12.png": { - "frame": {"x":1436,"y":753,"w":116,"h":144}, + "frame": {"x":1861,"y":593,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -106,7 +106,7 @@ }, "sprites/belt/built/forward_13.png": { - "frame": {"x":1433,"y":903,"w":116,"h":144}, + "frame": {"x":1875,"y":743,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -114,7 +114,7 @@ }, "sprites/belt/built/left_0.png": { - "frame": {"x":570,"y":1845,"w":130,"h":130}, + "frame": {"x":1238,"y":1464,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -122,7 +122,7 @@ }, "sprites/belt/built/left_1.png": { - "frame": {"x":1426,"y":1053,"w":130,"h":130}, + "frame": {"x":1374,"y":1495,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -130,7 +130,7 @@ }, "sprites/belt/built/left_2.png": { - "frame": {"x":1893,"y":1189,"w":130,"h":130}, + "frame": {"x":1741,"y":1203,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -138,7 +138,7 @@ }, "sprites/belt/built/left_3.png": { - "frame": {"x":1241,"y":1347,"w":130,"h":130}, + "frame": {"x":1745,"y":1339,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -146,7 +146,7 @@ }, "sprites/belt/built/left_4.png": { - "frame": {"x":1377,"y":1345,"w":130,"h":130}, + "frame": {"x":1754,"y":1475,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -154,7 +154,7 @@ }, "sprites/belt/built/left_5.png": { - "frame": {"x":1513,"y":1339,"w":130,"h":130}, + "frame": {"x":1813,"y":917,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -162,7 +162,7 @@ }, "sprites/belt/built/left_6.png": { - "frame": {"x":1649,"y":1339,"w":130,"h":130}, + "frame": {"x":1818,"y":1053,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -170,7 +170,7 @@ }, "sprites/belt/built/left_7.png": { - "frame": {"x":1785,"y":1339,"w":130,"h":130}, + "frame": {"x":1877,"y":1189,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -178,7 +178,7 @@ }, "sprites/belt/built/left_8.png": { - "frame": {"x":1377,"y":1481,"w":130,"h":130}, + "frame": {"x":1881,"y":1325,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -186,7 +186,7 @@ }, "sprites/belt/built/left_9.png": { - "frame": {"x":1802,"y":1475,"w":130,"h":130}, + "frame": {"x":1890,"y":1461,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -194,7 +194,7 @@ }, "sprites/belt/built/left_10.png": { - "frame": {"x":1485,"y":1203,"w":130,"h":130}, + "frame": {"x":939,"y":1712,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -202,7 +202,7 @@ }, "sprites/belt/built/left_11.png": { - "frame": {"x":1621,"y":1203,"w":130,"h":130}, + "frame": {"x":1677,"y":917,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -210,7 +210,7 @@ }, "sprites/belt/built/left_12.png": { - "frame": {"x":1757,"y":1203,"w":130,"h":130}, + "frame": {"x":1560,"y":1053,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -218,7 +218,7 @@ }, "sprites/belt/built/left_13.png": { - "frame": {"x":1806,"y":1053,"w":130,"h":130}, + "frame": {"x":1605,"y":1203,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -226,7 +226,7 @@ }, "sprites/belt/built/right_0.png": { - "frame": {"x":1799,"y":1611,"w":130,"h":130}, + "frame": {"x":1754,"y":1611,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -234,7 +234,7 @@ }, "sprites/belt/built/right_1.png": { - "frame": {"x":294,"y":1885,"w":130,"h":130}, + "frame": {"x":1890,"y":1597,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -242,7 +242,7 @@ }, "sprites/belt/built/right_2.png": { - "frame": {"x":1239,"y":1483,"w":130,"h":130}, + "frame": {"x":842,"y":1848,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -250,7 +250,7 @@ }, "sprites/belt/built/right_3.png": { - "frame": {"x":998,"y":1785,"w":130,"h":130}, + "frame": {"x":978,"y":1848,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -258,7 +258,7 @@ }, "sprites/belt/built/right_4.png": { - "frame": {"x":1112,"y":1630,"w":130,"h":130}, + "frame": {"x":1114,"y":1848,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -266,7 +266,7 @@ }, "sprites/belt/built/right_5.png": { - "frame": {"x":1248,"y":1619,"w":130,"h":130}, + "frame": {"x":271,"y":1885,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -274,7 +274,7 @@ }, "sprites/belt/built/right_6.png": { - "frame": {"x":1134,"y":1766,"w":130,"h":130}, + "frame": {"x":407,"y":1885,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -282,7 +282,7 @@ }, "sprites/belt/built/right_7.png": { - "frame": {"x":1270,"y":1755,"w":130,"h":130}, + "frame": {"x":1211,"y":1600,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -290,7 +290,7 @@ }, "sprites/belt/built/right_8.png": { - "frame": {"x":1134,"y":1902,"w":130,"h":130}, + "frame": {"x":1347,"y":1631,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -298,7 +298,7 @@ }, "sprites/belt/built/right_9.png": { - "frame": {"x":1270,"y":1891,"w":130,"h":130}, + "frame": {"x":1483,"y":1645,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -306,7 +306,7 @@ }, "sprites/belt/built/right_10.png": { - "frame": {"x":430,"y":1885,"w":130,"h":130}, + "frame": {"x":1075,"y":1712,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -314,7 +314,7 @@ }, "sprites/belt/built/right_11.png": { - "frame": {"x":967,"y":1513,"w":130,"h":130}, + "frame": {"x":1890,"y":1733,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -322,7 +322,7 @@ }, "sprites/belt/built/right_12.png": { - "frame": {"x":976,"y":1649,"w":130,"h":130}, + "frame": {"x":570,"y":1878,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -330,7 +330,7 @@ }, "sprites/belt/built/right_13.png": { - "frame": {"x":1103,"y":1444,"w":130,"h":130}, + "frame": {"x":706,"y":1861,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -378,7 +378,7 @@ }, "sprites/blueprints/belt_left.png": { - "frame": {"x":1406,"y":1877,"w":130,"h":130}, + "frame": {"x":1250,"y":1838,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -386,7 +386,7 @@ }, "sprites/blueprints/belt_right.png": { - "frame": {"x":1542,"y":1710,"w":130,"h":130}, + "frame": {"x":1726,"y":1747,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -394,7 +394,7 @@ }, "sprites/blueprints/belt_top.png": { - "frame": {"x":1799,"y":903,"w":116,"h":144}, + "frame": {"x":1632,"y":1489,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -402,7 +402,7 @@ }, "sprites/blueprints/constant_signal.png": { - "frame": {"x":1921,"y":1325,"w":105,"h":127}, + "frame": {"x":828,"y":1709,"w":105,"h":127}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":0,"w":105,"h":127}, @@ -426,7 +426,7 @@ }, "sprites/blueprints/display.png": { - "frame": {"x":842,"y":1698,"w":128,"h":136}, + "frame": {"x":1426,"y":1053,"w":128,"h":136}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":8,"y":8,"w":128,"h":136}, @@ -442,10 +442,10 @@ }, "sprites/blueprints/lever.png": { - "frame": {"x":1921,"y":893,"w":111,"h":129}, + "frame": {"x":1719,"y":453,"w":100,"h":116}, "rotated": false, "trimmed": true, - "spriteSourceSize": {"x":17,"y":4,"w":111,"h":129}, + "spriteSourceSize": {"x":22,"y":9,"w":100,"h":116}, "sourceSize": {"w":144,"h":144} }, "sprites/blueprints/logic_gate-not.png": @@ -482,7 +482,7 @@ }, "sprites/blueprints/logic_gate.png": { - "frame": {"x":1821,"y":454,"w":144,"h":133}, + "frame": {"x":1825,"y":454,"w":144,"h":133}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":144,"h":133}, @@ -498,7 +498,7 @@ }, "sprites/blueprints/miner.png": { - "frame": {"x":1725,"y":593,"w":136,"h":143}, + "frame": {"x":951,"y":1328,"w":136,"h":143}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":5,"y":0,"w":136,"h":143}, @@ -602,7 +602,7 @@ }, "sprites/blueprints/underground_belt_entry-tier2.png": { - "frame": {"x":954,"y":1188,"w":138,"h":125}, + "frame": {"x":806,"y":1461,"w":138,"h":125}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":19,"w":138,"h":125}, @@ -610,7 +610,7 @@ }, "sprites/blueprints/underground_belt_entry.png": { - "frame": {"x":954,"y":1319,"w":138,"h":112}, + "frame": {"x":950,"y":1477,"w":138,"h":112}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":32,"w":138,"h":112}, @@ -618,7 +618,7 @@ }, "sprites/blueprints/underground_belt_exit-tier2.png": { - "frame": {"x":1513,"y":1475,"w":139,"h":112}, + "frame": {"x":661,"y":1460,"w":139,"h":112}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":139,"h":112}, @@ -626,7 +626,7 @@ }, "sprites/blueprints/underground_belt_exit.png": { - "frame": {"x":1658,"y":1475,"w":138,"h":112}, + "frame": {"x":1094,"y":1475,"w":138,"h":112}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":138,"h":112}, @@ -666,7 +666,7 @@ }, "sprites/blueprints/virtual_processor-stacker.png": { - "frame": {"x":570,"y":1695,"w":130,"h":144}, + "frame": {"x":560,"y":1578,"w":130,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":130,"h":144}, @@ -706,7 +706,7 @@ }, "sprites/blueprints/wire-turn.png": { - "frame": {"x":557,"y":1456,"w":82,"h":82}, + "frame": {"x":1386,"y":1767,"w":82,"h":82}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":62,"y":62,"w":82,"h":82}, @@ -714,7 +714,7 @@ }, "sprites/blueprints/wire.png": { - "frame": {"x":1980,"y":1028,"w":20,"h":144}, + "frame": {"x":1954,"y":1033,"w":20,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":62,"y":0,"w":20,"h":144}, @@ -778,7 +778,7 @@ }, "sprites/buildings/belt_left.png": { - "frame": {"x":570,"y":1845,"w":130,"h":130}, + "frame": {"x":1238,"y":1464,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":14,"w":130,"h":130}, @@ -786,7 +786,7 @@ }, "sprites/buildings/belt_right.png": { - "frame": {"x":1799,"y":1611,"w":130,"h":130}, + "frame": {"x":1754,"y":1611,"w":130,"h":130}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":14,"w":130,"h":130}, @@ -794,7 +794,7 @@ }, "sprites/buildings/belt_top.png": { - "frame": {"x":1867,"y":593,"w":116,"h":144}, + "frame": {"x":1239,"y":1197,"w":116,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":116,"h":144}, @@ -802,7 +802,7 @@ }, "sprites/buildings/constant_signal.png": { - "frame": {"x":1938,"y":1458,"w":104,"h":127}, + "frame": {"x":696,"y":1578,"w":104,"h":127}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":0,"w":104,"h":127}, @@ -826,7 +826,7 @@ }, "sprites/buildings/display.png": { - "frame": {"x":842,"y":1840,"w":126,"h":135}, + "frame": {"x":1558,"y":753,"w":126,"h":135}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":126,"h":135}, @@ -850,10 +850,10 @@ }, "sprites/buildings/lever.png": { - "frame": {"x":1935,"y":1611,"w":109,"h":127}, + "frame": {"x":557,"y":1456,"w":98,"h":114}, "rotated": false, "trimmed": true, - "spriteSourceSize": {"x":18,"y":5,"w":109,"h":127}, + "spriteSourceSize": {"x":23,"y":10,"w":98,"h":114}, "sourceSize": {"w":144,"h":144} }, "sprites/buildings/logic_gate-not.png": @@ -906,7 +906,7 @@ }, "sprites/buildings/miner.png": { - "frame": {"x":560,"y":1547,"w":136,"h":142}, + "frame": {"x":1097,"y":1197,"w":136,"h":142}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":5,"y":0,"w":136,"h":142}, @@ -1010,7 +1010,7 @@ }, "sprites/buildings/underground_belt_entry-tier2.png": { - "frame": {"x":1098,"y":1197,"w":137,"h":124}, + "frame": {"x":1093,"y":1345,"w":137,"h":124}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":5,"y":20,"w":137,"h":124}, @@ -1018,7 +1018,7 @@ }, "sprites/buildings/underground_belt_entry.png": { - "frame": {"x":1098,"y":1327,"w":137,"h":111}, + "frame": {"x":1236,"y":1347,"w":137,"h":111}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":5,"y":33,"w":137,"h":111}, @@ -1026,7 +1026,7 @@ }, "sprites/buildings/underground_belt_exit-tier2.png": { - "frame": {"x":1513,"y":1593,"w":137,"h":111}, + "frame": {"x":806,"y":1592,"w":137,"h":111}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":5,"y":0,"w":137,"h":111}, @@ -1034,7 +1034,7 @@ }, "sprites/buildings/underground_belt_exit.png": { - "frame": {"x":1656,"y":1593,"w":137,"h":111}, + "frame": {"x":949,"y":1595,"w":137,"h":111}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":5,"y":0,"w":137,"h":111}, @@ -1050,7 +1050,7 @@ }, "sprites/buildings/virtual_processor-painter.png": { - "frame": {"x":706,"y":1688,"w":130,"h":144}, + "frame": {"x":570,"y":1728,"w":130,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":130,"h":144}, @@ -1074,7 +1074,7 @@ }, "sprites/buildings/virtual_processor-stacker.png": { - "frame": {"x":706,"y":1838,"w":130,"h":144}, + "frame": {"x":1725,"y":593,"w":130,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":14,"y":0,"w":130,"h":144}, @@ -1114,7 +1114,7 @@ }, "sprites/buildings/wire-turn.png": { - "frame": {"x":998,"y":1921,"w":81,"h":81}, + "frame": {"x":1386,"y":1855,"w":81,"h":81}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":63,"y":63,"w":81,"h":81}, @@ -1122,7 +1122,7 @@ }, "sprites/buildings/wire.png": { - "frame": {"x":2006,"y":1028,"w":18,"h":144}, + "frame": {"x":2026,"y":116,"w":18,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":63,"y":0,"w":18,"h":144}, @@ -1130,7 +1130,7 @@ }, "sprites/buildings/wire_tunnel-coating.png": { - "frame": {"x":1942,"y":1028,"w":32,"h":134}, + "frame": {"x":1949,"y":893,"w":32,"h":134}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":56,"y":5,"w":32,"h":134}, @@ -1138,7 +1138,7 @@ }, "sprites/buildings/wire_tunnel.png": { - "frame": {"x":702,"y":1548,"w":137,"h":134}, + "frame": {"x":954,"y":1188,"w":137,"h":134}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":5,"y":5,"w":137,"h":134}, @@ -1146,7 +1146,7 @@ }, "sprites/colors/blue.png": { - "frame": {"x":566,"y":1981,"w":54,"h":49}, + "frame": {"x":960,"y":1984,"w":54,"h":49}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49}, @@ -1154,7 +1154,7 @@ }, "sprites/colors/cyan.png": { - "frame": {"x":626,"y":1981,"w":54,"h":49}, + "frame": {"x":1020,"y":1984,"w":54,"h":49}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49}, @@ -1162,7 +1162,7 @@ }, "sprites/colors/green.png": { - "frame": {"x":686,"y":1988,"w":54,"h":49}, + "frame": {"x":1080,"y":1984,"w":54,"h":49}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49}, @@ -1170,7 +1170,7 @@ }, "sprites/colors/purple.png": { - "frame": {"x":746,"y":1988,"w":54,"h":49}, + "frame": {"x":1140,"y":1984,"w":54,"h":49}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49}, @@ -1178,7 +1178,7 @@ }, "sprites/colors/red.png": { - "frame": {"x":806,"y":1988,"w":54,"h":49}, + "frame": {"x":1987,"y":928,"w":54,"h":49}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49}, @@ -1186,7 +1186,7 @@ }, "sprites/colors/uncolored.png": { - "frame": {"x":866,"y":1981,"w":54,"h":49}, + "frame": {"x":1987,"y":983,"w":54,"h":49}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49}, @@ -1194,7 +1194,7 @@ }, "sprites/colors/white.png": { - "frame": {"x":1406,"y":1754,"w":54,"h":49}, + "frame": {"x":1980,"y":1038,"w":54,"h":49}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49}, @@ -1202,7 +1202,7 @@ }, "sprites/colors/yellow.png": { - "frame": {"x":1406,"y":1809,"w":54,"h":49}, + "frame": {"x":1980,"y":1093,"w":54,"h":49}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":54,"h":49}, @@ -1210,7 +1210,7 @@ }, "sprites/debug/acceptor_slot.png": { - "frame": {"x":1719,"y":555,"w":12,"h":12}, + "frame": {"x":1719,"y":575,"w":12,"h":12}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":12,"h":12}, @@ -1218,7 +1218,7 @@ }, "sprites/debug/ejector_slot.png": { - "frame": {"x":1921,"y":1028,"w":12,"h":12}, + "frame": {"x":1737,"y":575,"w":12,"h":12}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":12,"h":12}, @@ -1226,7 +1226,7 @@ }, "sprites/misc/hub_direction_indicator.png": { - "frame": {"x":1975,"y":266,"w":48,"h":48}, + "frame": {"x":1386,"y":1942,"w":48,"h":48}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48}, @@ -1234,7 +1234,7 @@ }, "sprites/misc/processor_disabled.png": { - "frame": {"x":1542,"y":1933,"w":78,"h":81}, + "frame": {"x":1561,"y":1781,"w":78,"h":81}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":10,"y":10,"w":78,"h":81}, @@ -1242,7 +1242,7 @@ }, "sprites/misc/processor_disconnected.png": { - "frame": {"x":1629,"y":1846,"w":65,"h":84}, + "frame": {"x":1645,"y":1765,"w":65,"h":84}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":17,"y":8,"w":65,"h":84}, @@ -1250,7 +1250,7 @@ }, "sprites/misc/reader_overlay.png": { - "frame": {"x":951,"y":1437,"w":104,"h":70}, + "frame": {"x":1250,"y":1974,"w":104,"h":70}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":38,"w":104,"h":70}, @@ -1258,7 +1258,7 @@ }, "sprites/misc/slot_bad_arrow.png": { - "frame": {"x":1626,"y":2009,"w":35,"h":35}, + "frame": {"x":1980,"y":1148,"w":35,"h":35}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":2,"y":2,"w":35,"h":35}, @@ -1266,7 +1266,7 @@ }, "sprites/misc/slot_good_arrow.png": { - "frame": {"x":1198,"y":1580,"w":35,"h":39}, + "frame": {"x":1766,"y":1883,"w":35,"h":39}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":2,"y":0,"w":35,"h":39}, @@ -1274,7 +1274,7 @@ }, "sprites/misc/storage_overlay.png": { - "frame": {"x":1103,"y":1580,"w":89,"h":44}, + "frame": {"x":865,"y":1984,"w":89,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":1,"w":89,"h":44}, @@ -1282,7 +1282,7 @@ }, "sprites/misc/waypoint.png": { - "frame": {"x":1999,"y":116,"w":38,"h":48}, + "frame": {"x":1414,"y":1996,"w":38,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":5,"y":0,"w":38,"h":48}, @@ -1290,7 +1290,7 @@ }, "sprites/wires/boolean_false.png": { - "frame": {"x":1061,"y":1437,"w":31,"h":41}, + "frame": {"x":2013,"y":1189,"w":31,"h":41}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":5,"w":31,"h":41}, @@ -1298,7 +1298,7 @@ }, "sprites/wires/boolean_true.png": { - "frame": {"x":1471,"y":1617,"w":22,"h":41}, + "frame": {"x":1862,"y":1747,"w":22,"h":41}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":11,"y":5,"w":22,"h":41}, @@ -1306,7 +1306,7 @@ }, "sprites/wires/display/blue.png": { - "frame": {"x":1975,"y":374,"w":47,"h":47}, + "frame": {"x":706,"y":1997,"w":47,"h":47}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47}, @@ -1314,7 +1314,7 @@ }, "sprites/wires/display/cyan.png": { - "frame": {"x":1975,"y":427,"w":47,"h":47}, + "frame": {"x":759,"y":1997,"w":47,"h":47}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47}, @@ -1322,7 +1322,7 @@ }, "sprites/wires/display/green.png": { - "frame": {"x":1971,"y":480,"w":47,"h":47}, + "frame": {"x":812,"y":1997,"w":47,"h":47}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47}, @@ -1330,7 +1330,7 @@ }, "sprites/wires/display/purple.png": { - "frame": {"x":1971,"y":533,"w":47,"h":47}, + "frame": {"x":1997,"y":716,"w":47,"h":47}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47}, @@ -1338,7 +1338,7 @@ }, "sprites/wires/display/red.png": { - "frame": {"x":1989,"y":586,"w":47,"h":47}, + "frame": {"x":1997,"y":769,"w":47,"h":47}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47}, @@ -1346,7 +1346,7 @@ }, "sprites/wires/display/white.png": { - "frame": {"x":1989,"y":639,"w":47,"h":47}, + "frame": {"x":1997,"y":822,"w":47,"h":47}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47}, @@ -1354,7 +1354,7 @@ }, "sprites/wires/display/yellow.png": { - "frame": {"x":1765,"y":1747,"w":47,"h":47}, + "frame": {"x":1997,"y":875,"w":47,"h":47}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":1,"w":47,"h":47}, @@ -1362,10 +1362,10 @@ }, "sprites/wires/lever_on.png": { - "frame": {"x":1935,"y":1744,"w":109,"h":127}, + "frame": {"x":1619,"y":1645,"w":101,"h":114}, "rotated": false, "trimmed": true, - "spriteSourceSize": {"x":18,"y":5,"w":109,"h":127}, + "spriteSourceSize": {"x":21,"y":10,"w":101,"h":114}, "sourceSize": {"w":144,"h":144} }, "sprites/wires/logical_acceptor.png": @@ -1378,7 +1378,7 @@ }, "sprites/wires/logical_ejector.png": { - "frame": {"x":1626,"y":1936,"w":60,"h":67}, + "frame": {"x":1647,"y":1855,"w":60,"h":67}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":44,"y":0,"w":60,"h":67}, @@ -1386,7 +1386,7 @@ }, "sprites/wires/network_conflict.png": { - "frame": {"x":1384,"y":1704,"w":47,"h":44}, + "frame": {"x":1713,"y":1883,"w":47,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":2,"w":47,"h":44}, @@ -1394,7 +1394,7 @@ }, "sprites/wires/network_empty.png": { - "frame": {"x":1085,"y":1921,"w":41,"h":48}, + "frame": {"x":1200,"y":1984,"w":41,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":5,"y":0,"w":41,"h":48}, @@ -1402,7 +1402,7 @@ }, "sprites/wires/overlay_tile.png": { - "frame": {"x":1719,"y":453,"w":96,"h":96}, + "frame": {"x":1211,"y":1736,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -1418,7 +1418,7 @@ }, "sprites/wires/sets/color_forward.png": { - "frame": {"x":270,"y":1889,"w":18,"h":144}, + "frame": {"x":2026,"y":266,"w":18,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":63,"y":0,"w":18,"h":144}, @@ -1434,7 +1434,7 @@ }, "sprites/wires/sets/color_turn.png": { - "frame": {"x":1384,"y":1617,"w":81,"h":81}, + "frame": {"x":1474,"y":1781,"w":81,"h":81}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":63,"y":63,"w":81,"h":81}, @@ -1450,7 +1450,7 @@ }, "sprites/wires/sets/conflict_forward.png": { - "frame": {"x":974,"y":1840,"w":18,"h":144}, + "frame": {"x":2026,"y":416,"w":18,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":63,"y":0,"w":18,"h":144}, @@ -1458,7 +1458,7 @@ }, "sprites/wires/sets/conflict_split.png": { - "frame": {"x":645,"y":1460,"w":144,"h":81}, + "frame": {"x":1725,"y":743,"w":144,"h":81}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":63,"w":144,"h":81}, @@ -1466,7 +1466,7 @@ }, "sprites/wires/sets/conflict_turn.png": { - "frame": {"x":1678,"y":1710,"w":81,"h":81}, + "frame": {"x":1473,"y":1868,"w":81,"h":81}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":63,"y":63,"w":81,"h":81}, @@ -1482,7 +1482,7 @@ }, "sprites/wires/sets/regular_forward.png": { - "frame": {"x":2006,"y":1028,"w":18,"h":144}, + "frame": {"x":2026,"y":116,"w":18,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":63,"y":0,"w":18,"h":144}, @@ -1498,7 +1498,7 @@ }, "sprites/wires/sets/regular_turn.png": { - "frame": {"x":998,"y":1921,"w":81,"h":81}, + "frame": {"x":1386,"y":1855,"w":81,"h":81}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":63,"y":63,"w":81,"h":81}, @@ -1514,7 +1514,7 @@ }, "sprites/wires/sets/shape_forward.png": { - "frame": {"x":1975,"y":116,"w":18,"h":144}, + "frame": {"x":2026,"y":566,"w":18,"h":144}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":63,"y":0,"w":18,"h":144}, @@ -1522,7 +1522,7 @@ }, "sprites/wires/sets/shape_split.png": { - "frame": {"x":795,"y":1461,"w":144,"h":81}, + "frame": {"x":1690,"y":830,"w":144,"h":81}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":63,"w":144,"h":81}, @@ -1530,7 +1530,7 @@ }, "sprites/wires/sets/shape_turn.png": { - "frame": {"x":1542,"y":1846,"w":81,"h":81}, + "frame": {"x":1560,"y":1868,"w":81,"h":81}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":63,"y":63,"w":81,"h":81}, @@ -1538,7 +1538,7 @@ }, "sprites/wires/wires_preview.png": { - "frame": {"x":1975,"y":320,"w":48,"h":48}, + "frame": {"x":1360,"y":1996,"w":48,"h":48}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48}, @@ -1551,6 +1551,6 @@ "format": "RGBA8888", "size": {"w":2048,"h":2048}, "scale": "0.75", - "smartupdate": "$TexturePacker:SmartUpdate:dac17f2501c07c842209cdd1895313a9:e5152751740891546eb27095657f7239:908b89f5ca8ff73e331a35a3b14d0604$" + "smartupdate": "$TexturePacker:SmartUpdate:5429cdf3b92834776437a91974e89d3c:fa61fb225cd312db144ce6a38d97871b:908b89f5ca8ff73e331a35a3b14d0604$" } } diff --git a/res_built/atlas/atlas0_hq.png b/res_built/atlas/atlas0_hq.png index 127ddeeb..63dbe6ea 100644 Binary files a/res_built/atlas/atlas0_hq.png and b/res_built/atlas/atlas0_hq.png differ diff --git a/res_built/atlas/atlas0_lq.json b/res_built/atlas/atlas0_lq.json index 24c59a2e..de5ae000 100644 --- a/res_built/atlas/atlas0_lq.json +++ b/res_built/atlas/atlas0_lq.json @@ -2,7 +2,7 @@ "sprites/belt/built/forward_0.png": { - "frame": {"x":157,"y":505,"w":40,"h":48}, + "frame": {"x":902,"y":294,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -10,7 +10,7 @@ }, "sprites/belt/built/forward_1.png": { - "frame": {"x":154,"y":559,"w":40,"h":48}, + "frame": {"x":200,"y":476,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -18,7 +18,7 @@ }, "sprites/belt/built/forward_2.png": { - "frame": {"x":200,"y":582,"w":40,"h":48}, + "frame": {"x":146,"y":514,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -26,7 +26,7 @@ }, "sprites/belt/built/forward_3.png": { - "frame": {"x":150,"y":613,"w":40,"h":48}, + "frame": {"x":50,"y":552,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -34,7 +34,7 @@ }, "sprites/belt/built/forward_4.png": { - "frame": {"x":100,"y":660,"w":40,"h":48}, + "frame": {"x":4,"y":553,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -42,7 +42,7 @@ }, "sprites/belt/built/forward_5.png": { - "frame": {"x":50,"y":678,"w":40,"h":48}, + "frame": {"x":96,"y":552,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -50,7 +50,7 @@ }, "sprites/belt/built/forward_6.png": { - "frame": {"x":4,"y":717,"w":40,"h":48}, + "frame": {"x":559,"y":432,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -58,7 +58,7 @@ }, "sprites/belt/built/forward_7.png": { - "frame": {"x":776,"y":352,"w":40,"h":48}, + "frame": {"x":605,"y":432,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -66,7 +66,7 @@ }, "sprites/belt/built/forward_8.png": { - "frame": {"x":715,"y":402,"w":40,"h":48}, + "frame": {"x":651,"y":480,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -74,7 +74,7 @@ }, "sprites/belt/built/forward_9.png": { - "frame": {"x":665,"y":428,"w":40,"h":48}, + "frame": {"x":697,"y":499,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -82,7 +82,7 @@ }, "sprites/belt/built/forward_10.png": { - "frame": {"x":104,"y":606,"w":40,"h":48}, + "frame": {"x":246,"y":476,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -90,7 +90,7 @@ }, "sprites/belt/built/forward_11.png": { - "frame": {"x":54,"y":624,"w":40,"h":48}, + "frame": {"x":54,"y":498,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -98,7 +98,7 @@ }, "sprites/belt/built/forward_12.png": { - "frame": {"x":4,"y":663,"w":40,"h":48}, + "frame": {"x":4,"y":499,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -106,7 +106,7 @@ }, "sprites/belt/built/forward_13.png": { - "frame": {"x":253,"y":532,"w":40,"h":48}, + "frame": {"x":100,"y":498,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -114,7 +114,7 @@ }, "sprites/belt/built/left_0.png": { - "frame": {"x":487,"y":302,"w":44,"h":44}, + "frame": {"x":668,"y":380,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -122,7 +122,7 @@ }, "sprites/belt/built/left_1.png": { - "frame": {"x":487,"y":352,"w":44,"h":44}, + "frame": {"x":718,"y":399,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -130,7 +130,7 @@ }, "sprites/belt/built/left_2.png": { - "frame": {"x":565,"y":362,"w":44,"h":44}, + "frame": {"x":932,"y":480,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -138,7 +138,7 @@ }, "sprites/belt/built/left_3.png": { - "frame": {"x":615,"y":362,"w":44,"h":44}, + "frame": {"x":718,"y":449,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -146,7 +146,7 @@ }, "sprites/belt/built/left_4.png": { - "frame": {"x":487,"y":402,"w":44,"h":44}, + "frame": {"x":768,"y":449,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -154,7 +154,7 @@ }, "sprites/belt/built/left_5.png": { - "frame": {"x":431,"y":404,"w":44,"h":44}, + "frame": {"x":832,"y":478,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -162,7 +162,7 @@ }, "sprites/belt/built/left_6.png": { - "frame": {"x":381,"y":406,"w":44,"h":44}, + "frame": {"x":882,"y":500,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -170,7 +170,7 @@ }, "sprites/belt/built/left_7.png": { - "frame": {"x":313,"y":436,"w":44,"h":44}, + "frame": {"x":932,"y":530,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -178,7 +178,7 @@ }, "sprites/belt/built/left_8.png": { - "frame": {"x":205,"y":482,"w":44,"h":44}, + "frame": {"x":384,"y":302,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -186,7 +186,7 @@ }, "sprites/belt/built/left_9.png": { - "frame": {"x":104,"y":556,"w":44,"h":44}, + "frame": {"x":207,"y":376,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -194,7 +194,7 @@ }, "sprites/belt/built/left_10.png": { - "frame": {"x":437,"y":354,"w":44,"h":44}, + "frame": {"x":668,"y":430,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -202,7 +202,7 @@ }, "sprites/belt/built/left_11.png": { - "frame": {"x":381,"y":356,"w":44,"h":44}, + "frame": {"x":768,"y":399,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -210,7 +210,7 @@ }, "sprites/belt/built/left_12.png": { - "frame": {"x":733,"y":302,"w":44,"h":44}, + "frame": {"x":832,"y":428,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -218,7 +218,7 @@ }, "sprites/belt/built/left_13.png": { - "frame": {"x":676,"y":328,"w":44,"h":44}, + "frame": {"x":882,"y":450,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -226,7 +226,7 @@ }, "sprites/belt/built/right_0.png": { - "frame": {"x":54,"y":574,"w":44,"h":44}, + "frame": {"x":257,"y":376,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -234,7 +234,7 @@ }, "sprites/belt/built/right_1.png": { - "frame": {"x":4,"y":613,"w":44,"h":44}, + "frame": {"x":434,"y":302,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -242,7 +242,7 @@ }, "sprites/belt/built/right_2.png": { - "frame": {"x":947,"y":328,"w":44,"h":44}, + "frame": {"x":252,"y":426,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -250,7 +250,7 @@ }, "sprites/belt/built/right_3.png": { - "frame": {"x":726,"y":352,"w":44,"h":44}, + "frame": {"x":427,"y":352,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -258,7 +258,7 @@ }, "sprites/belt/built/right_4.png": { - "frame": {"x":665,"y":378,"w":44,"h":44}, + "frame": {"x":477,"y":352,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -266,7 +266,7 @@ }, "sprites/belt/built/right_5.png": { - "frame": {"x":565,"y":412,"w":44,"h":44}, + "frame": {"x":561,"y":382,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -274,7 +274,7 @@ }, "sprites/belt/built/right_6.png": { - "frame": {"x":615,"y":412,"w":44,"h":44}, + "frame": {"x":58,"y":448,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -282,7 +282,7 @@ }, "sprites/belt/built/right_7.png": { - "frame": {"x":481,"y":452,"w":44,"h":44}, + "frame": {"x":4,"y":449,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -290,7 +290,7 @@ }, "sprites/belt/built/right_8.png": { - "frame": {"x":431,"y":454,"w":44,"h":44}, + "frame": {"x":108,"y":448,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -298,7 +298,7 @@ }, "sprites/belt/built/right_9.png": { - "frame": {"x":377,"y":456,"w":44,"h":44}, + "frame": {"x":376,"y":402,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -306,7 +306,7 @@ }, "sprites/belt/built/right_10.png": { - "frame": {"x":255,"y":482,"w":44,"h":44}, + "frame": {"x":484,"y":302,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -314,7 +314,7 @@ }, "sprites/belt/built/right_11.png": { - "frame": {"x":783,"y":302,"w":44,"h":44}, + "frame": {"x":377,"y":352,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -322,7 +322,7 @@ }, "sprites/belt/built/right_12.png": { - "frame": {"x":833,"y":302,"w":44,"h":44}, + "frame": {"x":307,"y":382,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -330,7 +330,7 @@ }, "sprites/belt/built/right_13.png": { - "frame": {"x":897,"y":314,"w":44,"h":44}, + "frame": {"x":202,"y":426,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -346,7 +346,7 @@ }, "sprites/blueprints/balancer-merger.png": { - "frame": {"x":208,"y":376,"w":47,"h":47}, + "frame": {"x":678,"y":274,"w":47,"h":47}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":47,"h":47}, @@ -362,7 +362,7 @@ }, "sprites/blueprints/balancer-splitter.png": { - "frame": {"x":261,"y":376,"w":47,"h":47}, + "frame": {"x":731,"y":302,"w":47,"h":47}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":47,"h":47}, @@ -378,7 +378,7 @@ }, "sprites/blueprints/belt_left.png": { - "frame": {"x":305,"y":486,"w":44,"h":44}, + "frame": {"x":302,"y":432,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -386,7 +386,7 @@ }, "sprites/blueprints/belt_right.png": { - "frame": {"x":203,"y":532,"w":44,"h":44}, + "frame": {"x":426,"y":402,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -394,7 +394,7 @@ }, "sprites/blueprints/belt_top.png": { - "frame": {"x":822,"y":352,"w":40,"h":48}, + "frame": {"x":743,"y":499,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -426,7 +426,7 @@ }, "sprites/blueprints/display.png": { - "frame": {"x":4,"y":561,"w":44,"h":46}, + "frame": {"x":618,"y":328,"w":44,"h":46}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":2,"y":2,"w":44,"h":46}, @@ -442,10 +442,10 @@ }, "sprites/blueprints/lever.png": { - "frame": {"x":906,"y":214,"w":38,"h":44}, + "frame": {"x":982,"y":483,"w":35,"h":41}, "rotated": false, "trimmed": true, - "spriteSourceSize": {"x":5,"y":1,"w":38,"h":44}, + "spriteSourceSize": {"x":6,"y":2,"w":35,"h":41}, "sourceSize": {"w":48,"h":48} }, "sprites/blueprints/logic_gate-not.png": @@ -466,7 +466,7 @@ }, "sprites/blueprints/logic_gate-transistor.png": { - "frame": {"x":166,"y":397,"w":35,"h":48}, + "frame": {"x":166,"y":317,"w":35,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":35,"h":48}, @@ -490,7 +490,7 @@ }, "sprites/blueprints/miner-chainable.png": { - "frame": {"x":680,"y":274,"w":47,"h":48}, + "frame": {"x":849,"y":268,"w":47,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":47,"h":48}, @@ -498,7 +498,7 @@ }, "sprites/blueprints/miner.png": { - "frame": {"x":570,"y":308,"w":47,"h":48}, + "frame": {"x":948,"y":328,"w":47,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":47,"h":48}, @@ -642,7 +642,7 @@ }, "sprites/blueprints/virtual_processor-painter.png": { - "frame": {"x":57,"y":466,"w":44,"h":48}, + "frame": {"x":837,"y":374,"w":44,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":44,"h":48}, @@ -666,7 +666,7 @@ }, "sprites/blueprints/virtual_processor-stacker.png": { - "frame": {"x":4,"y":507,"w":44,"h":48}, + "frame": {"x":887,"y":396,"w":44,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":44,"h":48}, @@ -698,7 +698,7 @@ }, "sprites/blueprints/wire-split.png": { - "frame": {"x":741,"y":268,"w":48,"h":28}, + "frame": {"x":58,"y":414,"w":48,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":20,"w":48,"h":28}, @@ -706,7 +706,7 @@ }, "sprites/blueprints/wire-turn.png": { - "frame": {"x":912,"y":364,"w":28,"h":28}, + "frame": {"x":166,"y":446,"w":28,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":20,"w":28,"h":28}, @@ -722,7 +722,7 @@ }, "sprites/blueprints/wire_tunnel-coating.png": { - "frame": {"x":363,"y":345,"w":12,"h":46}, + "frame": {"x":550,"y":294,"w":12,"h":46}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":18,"y":1,"w":12,"h":46}, @@ -746,7 +746,7 @@ }, "sprites/buildings/balancer-merger.png": { - "frame": {"x":207,"y":429,"w":47,"h":47}, + "frame": {"x":678,"y":327,"w":47,"h":47}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":47,"h":47}, @@ -762,7 +762,7 @@ }, "sprites/buildings/balancer-splitter.png": { - "frame": {"x":260,"y":429,"w":47,"h":47}, + "frame": {"x":784,"y":302,"w":47,"h":47}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":47,"h":47}, @@ -778,7 +778,7 @@ }, "sprites/buildings/belt_left.png": { - "frame": {"x":487,"y":302,"w":44,"h":44}, + "frame": {"x":668,"y":380,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":4,"w":44,"h":44}, @@ -786,7 +786,7 @@ }, "sprites/buildings/belt_right.png": { - "frame": {"x":54,"y":574,"w":44,"h":44}, + "frame": {"x":257,"y":376,"w":44,"h":44}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":4,"w":44,"h":44}, @@ -794,7 +794,7 @@ }, "sprites/buildings/belt_top.png": { - "frame": {"x":157,"y":505,"w":40,"h":48}, + "frame": {"x":902,"y":294,"w":40,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":40,"h":48}, @@ -802,7 +802,7 @@ }, "sprites/buildings/constant_signal.png": { - "frame": {"x":166,"y":317,"w":36,"h":43}, + "frame": {"x":906,"y":214,"w":36,"h":43}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":6,"y":0,"w":36,"h":43}, @@ -826,7 +826,7 @@ }, "sprites/buildings/display.png": { - "frame": {"x":437,"y":302,"w":44,"h":46}, + "frame": {"x":618,"y":380,"w":44,"h":46}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":2,"y":2,"w":44,"h":46}, @@ -850,15 +850,15 @@ }, "sprites/buildings/lever.png": { - "frame": {"x":906,"y":264,"w":38,"h":44}, + "frame": {"x":982,"y":576,"w":34,"h":40}, "rotated": false, "trimmed": true, - "spriteSourceSize": {"x":5,"y":1,"w":38,"h":44}, + "spriteSourceSize": {"x":7,"y":2,"w":34,"h":40}, "sourceSize": {"w":48,"h":48} }, "sprites/buildings/logic_gate-not.png": { - "frame": {"x":314,"y":382,"w":43,"h":48}, + "frame": {"x":476,"y":402,"w":43,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":0,"w":43,"h":48}, @@ -874,7 +874,7 @@ }, "sprites/buildings/logic_gate-transistor.png": { - "frame": {"x":164,"y":451,"w":35,"h":48}, + "frame": {"x":166,"y":371,"w":35,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":35,"h":48}, @@ -890,7 +890,7 @@ }, "sprites/buildings/logic_gate.png": { - "frame": {"x":208,"y":325,"w":48,"h":45}, + "frame": {"x":207,"y":325,"w":48,"h":45}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":48,"h":45}, @@ -898,7 +898,7 @@ }, "sprites/buildings/miner-chainable.png": { - "frame": {"x":623,"y":308,"w":47,"h":48}, + "frame": {"x":572,"y":274,"w":47,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":47,"h":48}, @@ -906,7 +906,7 @@ }, "sprites/buildings/miner.png": { - "frame": {"x":384,"y":302,"w":47,"h":48}, + "frame": {"x":625,"y":274,"w":47,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":47,"h":48}, @@ -1010,7 +1010,7 @@ }, "sprites/buildings/underground_belt_entry-tier2.png": { - "frame": {"x":4,"y":415,"w":47,"h":42}, + "frame": {"x":890,"y":348,"w":47,"h":42}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":6,"w":47,"h":42}, @@ -1018,7 +1018,7 @@ }, "sprites/buildings/underground_belt_entry.png": { - "frame": {"x":4,"y":463,"w":47,"h":38}, + "frame": {"x":943,"y":382,"w":47,"h":38}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":10,"w":47,"h":38}, @@ -1026,7 +1026,7 @@ }, "sprites/buildings/underground_belt_exit-tier2.png": { - "frame": {"x":111,"y":414,"w":47,"h":38}, + "frame": {"x":731,"y":355,"w":47,"h":38}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":47,"h":38}, @@ -1034,7 +1034,7 @@ }, "sprites/buildings/underground_belt_exit.png": { - "frame": {"x":111,"y":458,"w":47,"h":38}, + "frame": {"x":784,"y":355,"w":47,"h":38}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":47,"h":38}, @@ -1050,7 +1050,7 @@ }, "sprites/buildings/virtual_processor-painter.png": { - "frame": {"x":107,"y":502,"w":44,"h":48}, + "frame": {"x":937,"y":426,"w":44,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":44,"h":48}, @@ -1058,7 +1058,7 @@ }, "sprites/buildings/virtual_processor-rotater.png": { - "frame": {"x":316,"y":328,"w":41,"h":48}, + "frame": {"x":315,"y":328,"w":41,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":41,"h":48}, @@ -1066,7 +1066,7 @@ }, "sprites/buildings/virtual_processor-shapecompare.png": { - "frame": {"x":262,"y":325,"w":48,"h":45}, + "frame": {"x":261,"y":325,"w":48,"h":45}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":48,"h":45}, @@ -1074,7 +1074,7 @@ }, "sprites/buildings/virtual_processor-stacker.png": { - "frame": {"x":54,"y":520,"w":44,"h":48}, + "frame": {"x":568,"y":328,"w":44,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":4,"y":0,"w":44,"h":48}, @@ -1090,7 +1090,7 @@ }, "sprites/buildings/virtual_processor.png": { - "frame": {"x":950,"y":220,"w":48,"h":48}, + "frame": {"x":948,"y":220,"w":48,"h":48}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48}, @@ -1098,7 +1098,7 @@ }, "sprites/buildings/wire-cross.png": { - "frame": {"x":950,"y":274,"w":48,"h":48}, + "frame": {"x":948,"y":274,"w":48,"h":48}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48}, @@ -1106,7 +1106,7 @@ }, "sprites/buildings/wire-split.png": { - "frame": {"x":795,"y":268,"w":48,"h":28}, + "frame": {"x":4,"y":415,"w":48,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":20,"w":48,"h":28}, @@ -1114,7 +1114,7 @@ }, "sprites/buildings/wire-turn.png": { - "frame": {"x":912,"y":398,"w":28,"h":28}, + "frame": {"x":527,"y":381,"w":28,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":20,"w":28,"h":28}, @@ -1122,7 +1122,7 @@ }, "sprites/buildings/wire.png": { - "frame": {"x":537,"y":368,"w":8,"h":48}, + "frame": {"x":818,"y":420,"w":8,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":0,"w":8,"h":48}, @@ -1130,7 +1130,7 @@ }, "sprites/buildings/wire_tunnel-coating.png": { - "frame": {"x":547,"y":316,"w":12,"h":46}, + "frame": {"x":996,"y":393,"w":12,"h":46}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":18,"y":1,"w":12,"h":46}, @@ -1138,7 +1138,7 @@ }, "sprites/buildings/wire_tunnel.png": { - "frame": {"x":58,"y":414,"w":47,"h":46}, + "frame": {"x":837,"y":322,"w":47,"h":46}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":1,"w":47,"h":46}, @@ -1202,7 +1202,7 @@ }, "sprites/colors/yellow.png": { - "frame": {"x":364,"y":261,"w":18,"h":18}, + "frame": {"x":1002,"y":221,"w":18,"h":18}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":18,"h":18}, @@ -1210,7 +1210,7 @@ }, "sprites/debug/acceptor_slot.png": { - "frame": {"x":537,"y":302,"w":4,"h":4}, + "frame": {"x":731,"y":274,"w":4,"h":4}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":4,"h":4}, @@ -1218,7 +1218,7 @@ }, "sprites/debug/ejector_slot.png": { - "frame": {"x":537,"y":312,"w":4,"h":4}, + "frame": {"x":731,"y":284,"w":4,"h":4}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":4,"h":4}, @@ -1234,7 +1234,7 @@ }, "sprites/misc/processor_disabled.png": { - "frame": {"x":531,"y":452,"w":28,"h":29}, + "frame": {"x":534,"y":346,"w":28,"h":29}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":2,"y":2,"w":28,"h":29}, @@ -1250,7 +1250,7 @@ }, "sprites/misc/reader_overlay.png": { - "frame": {"x":166,"y":366,"w":36,"h":25}, + "frame": {"x":906,"y":263,"w":36,"h":25}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":6,"y":12,"w":36,"h":25}, @@ -1258,7 +1258,7 @@ }, "sprites/misc/slot_bad_arrow.png": { - "frame": {"x":363,"y":307,"w":13,"h":13}, + "frame": {"x":1001,"y":355,"w":13,"h":13}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":13,"h":13}, @@ -1266,7 +1266,7 @@ }, "sprites/misc/slot_good_arrow.png": { - "frame": {"x":363,"y":326,"w":13,"h":13}, + "frame": {"x":1001,"y":374,"w":13,"h":13}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":13,"h":13}, @@ -1274,7 +1274,7 @@ }, "sprites/misc/storage_overlay.png": { - "frame": {"x":984,"y":378,"w":30,"h":15}, + "frame": {"x":166,"y":425,"w":30,"h":15}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":30,"h":15}, @@ -1282,7 +1282,7 @@ }, "sprites/misc/waypoint.png": { - "frame": {"x":550,"y":294,"w":14,"h":16}, + "frame": {"x":1001,"y":333,"w":14,"h":16}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":14,"h":16}, @@ -1290,7 +1290,7 @@ }, "sprites/wires/boolean_false.png": { - "frame": {"x":363,"y":397,"w":12,"h":15}, + "frame": {"x":818,"y":399,"w":12,"h":15}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":2,"y":1,"w":12,"h":15}, @@ -1330,7 +1330,7 @@ }, "sprites/wires/display/purple.png": { - "frame": {"x":1004,"y":221,"w":16,"h":16}, + "frame": {"x":1002,"y":245,"w":16,"h":16}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16}, @@ -1338,7 +1338,7 @@ }, "sprites/wires/display/red.png": { - "frame": {"x":1004,"y":243,"w":16,"h":16}, + "frame": {"x":1002,"y":267,"w":16,"h":16}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16}, @@ -1346,7 +1346,7 @@ }, "sprites/wires/display/white.png": { - "frame": {"x":1004,"y":265,"w":16,"h":16}, + "frame": {"x":1002,"y":289,"w":16,"h":16}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16}, @@ -1354,7 +1354,7 @@ }, "sprites/wires/display/yellow.png": { - "frame": {"x":1004,"y":287,"w":16,"h":16}, + "frame": {"x":1002,"y":311,"w":16,"h":16}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16}, @@ -1362,10 +1362,10 @@ }, "sprites/wires/lever_on.png": { - "frame": {"x":868,"y":364,"w":38,"h":44}, + "frame": {"x":982,"y":530,"w":35,"h":40}, "rotated": false, "trimmed": true, - "spriteSourceSize": {"x":5,"y":1,"w":38,"h":44}, + "spriteSourceSize": {"x":6,"y":2,"w":35,"h":40}, "sourceSize": {"w":48,"h":48} }, "sprites/wires/logical_acceptor.png": @@ -1386,7 +1386,7 @@ }, "sprites/wires/network_conflict.png": { - "frame": {"x":1004,"y":309,"w":16,"h":16}, + "frame": {"x":364,"y":261,"w":16,"h":16}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":16,"h":16}, @@ -1394,7 +1394,7 @@ }, "sprites/wires/network_empty.png": { - "frame": {"x":363,"y":285,"w":15,"h":16}, + "frame": {"x":363,"y":283,"w":15,"h":16}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":15,"h":16}, @@ -1402,7 +1402,7 @@ }, "sprites/wires/overlay_tile.png": { - "frame": {"x":946,"y":378,"w":32,"h":32}, + "frame": {"x":987,"y":445,"w":32,"h":32}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":32,"h":32}, @@ -1418,7 +1418,7 @@ }, "sprites/wires/sets/color_forward.png": { - "frame": {"x":551,"y":368,"w":8,"h":48}, + "frame": {"x":818,"y":474,"w":8,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":0,"w":8,"h":48}, @@ -1426,7 +1426,7 @@ }, "sprites/wires/sets/color_split.png": { - "frame": {"x":849,"y":268,"w":48,"h":28}, + "frame": {"x":112,"y":414,"w":48,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":20,"w":48,"h":28}, @@ -1434,7 +1434,7 @@ }, "sprites/wires/sets/color_turn.png": { - "frame": {"x":984,"y":399,"w":28,"h":28}, + "frame": {"x":525,"y":415,"w":28,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":20,"w":28,"h":28}, @@ -1450,7 +1450,7 @@ }, "sprites/wires/sets/conflict_forward.png": { - "frame": {"x":363,"y":418,"w":8,"h":48}, + "frame": {"x":363,"y":305,"w":8,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":0,"w":8,"h":48}, @@ -1458,7 +1458,7 @@ }, "sprites/wires/sets/conflict_split.png": { - "frame": {"x":572,"y":274,"w":48,"h":28}, + "frame": {"x":741,"y":268,"w":48,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":20,"w":48,"h":28}, @@ -1466,7 +1466,7 @@ }, "sprites/wires/sets/conflict_turn.png": { - "frame": {"x":946,"y":416,"w":28,"h":28}, + "frame": {"x":158,"y":480,"w":28,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":20,"w":28,"h":28}, @@ -1474,7 +1474,7 @@ }, "sprites/wires/sets/regular_cross.png": { - "frame": {"x":950,"y":274,"w":48,"h":48}, + "frame": {"x":948,"y":274,"w":48,"h":48}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":48,"h":48}, @@ -1482,7 +1482,7 @@ }, "sprites/wires/sets/regular_forward.png": { - "frame": {"x":537,"y":368,"w":8,"h":48}, + "frame": {"x":818,"y":420,"w":8,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":0,"w":8,"h":48}, @@ -1490,7 +1490,7 @@ }, "sprites/wires/sets/regular_split.png": { - "frame": {"x":795,"y":268,"w":48,"h":28}, + "frame": {"x":4,"y":415,"w":48,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":20,"w":48,"h":28}, @@ -1498,7 +1498,7 @@ }, "sprites/wires/sets/regular_turn.png": { - "frame": {"x":912,"y":398,"w":28,"h":28}, + "frame": {"x":527,"y":381,"w":28,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":20,"w":28,"h":28}, @@ -1514,7 +1514,7 @@ }, "sprites/wires/sets/shape_forward.png": { - "frame": {"x":883,"y":302,"w":8,"h":48}, + "frame": {"x":362,"y":359,"w":8,"h":48}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":0,"w":8,"h":48}, @@ -1522,7 +1522,7 @@ }, "sprites/wires/sets/shape_split.png": { - "frame": {"x":626,"y":274,"w":48,"h":28}, + "frame": {"x":795,"y":268,"w":48,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":20,"w":48,"h":28}, @@ -1530,7 +1530,7 @@ }, "sprites/wires/sets/shape_turn.png": { - "frame": {"x":980,"y":433,"w":28,"h":28}, + "frame": {"x":525,"y":449,"w":28,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":20,"y":20,"w":28,"h":28}, @@ -1551,6 +1551,6 @@ "format": "RGBA8888", "size": {"w":1024,"h":1024}, "scale": "0.25", - "smartupdate": "$TexturePacker:SmartUpdate:dac17f2501c07c842209cdd1895313a9:e5152751740891546eb27095657f7239:908b89f5ca8ff73e331a35a3b14d0604$" + "smartupdate": "$TexturePacker:SmartUpdate:5429cdf3b92834776437a91974e89d3c:fa61fb225cd312db144ce6a38d97871b:908b89f5ca8ff73e331a35a3b14d0604$" } } diff --git a/res_built/atlas/atlas0_lq.png b/res_built/atlas/atlas0_lq.png index 73dd6a6c..15cdd7bc 100644 Binary files a/res_built/atlas/atlas0_lq.png and b/res_built/atlas/atlas0_lq.png differ diff --git a/res_built/atlas/atlas0_mq.json b/res_built/atlas/atlas0_mq.json index d3b7a1e5..98dfe66a 100644 --- a/res_built/atlas/atlas0_mq.json +++ b/res_built/atlas/atlas0_mq.json @@ -2,7 +2,7 @@ "sprites/belt/built/forward_0.png": { - "frame": {"x":802,"y":1151,"w":78,"h":96}, + "frame": {"x":97,"y":1812,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -10,7 +10,7 @@ }, "sprites/belt/built/forward_1.png": { - "frame": {"x":376,"y":1763,"w":78,"h":96}, + "frame": {"x":4,"y":1831,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -18,7 +18,7 @@ }, "sprites/belt/built/forward_2.png": { - "frame": {"x":88,"y":1947,"w":78,"h":96}, + "frame": {"x":566,"y":1691,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -26,7 +26,7 @@ }, "sprites/belt/built/forward_3.png": { - "frame": {"x":172,"y":1947,"w":78,"h":96}, + "frame": {"x":466,"y":1760,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -34,7 +34,7 @@ }, "sprites/belt/built/forward_4.png": { - "frame": {"x":256,"y":1937,"w":78,"h":96}, + "frame": {"x":368,"y":1792,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -42,7 +42,7 @@ }, "sprites/belt/built/forward_5.png": { - "frame": {"x":340,"y":1885,"w":78,"h":96}, + "frame": {"x":275,"y":1818,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -50,7 +50,7 @@ }, "sprites/belt/built/forward_6.png": { - "frame": {"x":869,"y":1622,"w":78,"h":96}, + "frame": {"x":181,"y":1882,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -58,7 +58,7 @@ }, "sprites/belt/built/forward_7.png": { - "frame": {"x":761,"y":1692,"w":78,"h":96}, + "frame": {"x":88,"y":1914,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -66,7 +66,7 @@ }, "sprites/belt/built/forward_8.png": { - "frame": {"x":658,"y":1736,"w":78,"h":96}, + "frame": {"x":265,"y":1920,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -74,7 +74,7 @@ }, "sprites/belt/built/forward_9.png": { - "frame": {"x":558,"y":1766,"w":78,"h":96}, + "frame": {"x":349,"y":1920,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -82,7 +82,7 @@ }, "sprites/belt/built/forward_10.png": { - "frame": {"x":283,"y":1783,"w":78,"h":96}, + "frame": {"x":4,"y":1933,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -90,7 +90,7 @@ }, "sprites/belt/built/forward_11.png": { - "frame": {"x":190,"y":1835,"w":78,"h":96}, + "frame": {"x":868,"y":1567,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -98,7 +98,7 @@ }, "sprites/belt/built/forward_12.png": { - "frame": {"x":96,"y":1845,"w":78,"h":96}, + "frame": {"x":769,"y":1608,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -106,7 +106,7 @@ }, "sprites/belt/built/forward_13.png": { - "frame": {"x":4,"y":1947,"w":78,"h":96}, + "frame": {"x":665,"y":1690,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -114,7 +114,7 @@ }, "sprites/belt/built/left_0.png": { - "frame": {"x":101,"y":1473,"w":87,"h":87}, + "frame": {"x":102,"y":1440,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -122,7 +122,7 @@ }, "sprites/belt/built/left_1.png": { - "frame": {"x":4,"y":1498,"w":87,"h":87}, + "frame": {"x":4,"y":1459,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -130,7 +130,7 @@ }, "sprites/belt/built/left_2.png": { - "frame": {"x":642,"y":1385,"w":87,"h":87}, + "frame": {"x":195,"y":1501,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -138,7 +138,7 @@ }, "sprites/belt/built/left_3.png": { - "frame": {"x":735,"y":1448,"w":87,"h":87}, + "frame": {"x":97,"y":1533,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -146,7 +146,7 @@ }, "sprites/belt/built/left_4.png": { - "frame": {"x":828,"y":1503,"w":87,"h":87}, + "frame": {"x":4,"y":1552,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -154,7 +154,7 @@ }, "sprites/belt/built/left_5.png": { - "frame": {"x":921,"y":1529,"w":87,"h":87}, + "frame": {"x":688,"y":1411,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -162,7 +162,7 @@ }, "sprites/belt/built/left_6.png": { - "frame": {"x":500,"y":1448,"w":87,"h":87}, + "frame": {"x":589,"y":1412,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -170,7 +170,7 @@ }, "sprites/belt/built/left_7.png": { - "frame": {"x":394,"y":1484,"w":87,"h":87}, + "frame": {"x":490,"y":1477,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -178,7 +178,7 @@ }, "sprites/belt/built/left_8.png": { - "frame": {"x":294,"y":1504,"w":87,"h":87}, + "frame": {"x":386,"y":1510,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -186,7 +186,7 @@ }, "sprites/belt/built/left_9.png": { - "frame": {"x":194,"y":1556,"w":87,"h":87}, + "frame": {"x":288,"y":1530,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -194,7 +194,7 @@ }, "sprites/belt/built/left_10.png": { - "frame": {"x":844,"y":1317,"w":87,"h":87}, + "frame": {"x":595,"y":1319,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -202,7 +202,7 @@ }, "sprites/belt/built/left_11.png": { - "frame": {"x":745,"y":1355,"w":87,"h":87}, + "frame": {"x":496,"y":1384,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -210,7 +210,7 @@ }, "sprites/belt/built/left_12.png": { - "frame": {"x":838,"y":1410,"w":87,"h":87}, + "frame": {"x":397,"y":1417,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -218,7 +218,7 @@ }, "sprites/belt/built/left_13.png": { - "frame": {"x":931,"y":1436,"w":87,"h":87}, + "frame": {"x":293,"y":1437,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -226,7 +226,7 @@ }, "sprites/belt/built/right_0.png": { - "frame": {"x":97,"y":1566,"w":87,"h":87}, + "frame": {"x":190,"y":1594,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -234,7 +234,7 @@ }, "sprites/belt/built/right_1.png": { - "frame": {"x":4,"y":1591,"w":87,"h":87}, + "frame": {"x":97,"y":1626,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -242,7 +242,7 @@ }, "sprites/belt/built/right_2.png": { - "frame": {"x":190,"y":1649,"w":87,"h":87}, + "frame": {"x":479,"y":1570,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -250,7 +250,7 @@ }, "sprites/belt/built/right_3.png": { - "frame": {"x":97,"y":1659,"w":87,"h":87}, + "frame": {"x":381,"y":1603,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -258,7 +258,7 @@ }, "sprites/belt/built/right_4.png": { - "frame": {"x":4,"y":1684,"w":87,"h":87}, + "frame": {"x":283,"y":1623,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -266,7 +266,7 @@ }, "sprites/belt/built/right_5.png": { - "frame": {"x":686,"y":1541,"w":87,"h":87}, + "frame": {"x":190,"y":1687,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -274,7 +274,7 @@ }, "sprites/belt/built/right_6.png": { - "frame": {"x":580,"y":1571,"w":87,"h":87}, + "frame": {"x":97,"y":1719,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -282,7 +282,7 @@ }, "sprites/belt/built/right_7.png": { - "frame": {"x":480,"y":1634,"w":87,"h":87}, + "frame": {"x":4,"y":1738,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -290,7 +290,7 @@ }, "sprites/belt/built/right_8.png": { - "frame": {"x":380,"y":1670,"w":87,"h":87}, + "frame": {"x":874,"y":1474,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -298,7 +298,7 @@ }, "sprites/belt/built/right_9.png": { - "frame": {"x":283,"y":1690,"w":87,"h":87}, + "frame": {"x":775,"y":1515,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -306,7 +306,7 @@ }, "sprites/belt/built/right_10.png": { - "frame": {"x":593,"y":1478,"w":87,"h":87}, + "frame": {"x":4,"y":1645,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -314,7 +314,7 @@ }, "sprites/belt/built/right_11.png": { - "frame": {"x":487,"y":1541,"w":87,"h":87}, + "frame": {"x":781,"y":1422,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -322,7 +322,7 @@ }, "sprites/belt/built/right_12.png": { - "frame": {"x":387,"y":1577,"w":87,"h":87}, + "frame": {"x":682,"y":1504,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -330,7 +330,7 @@ }, "sprites/belt/built/right_13.png": { - "frame": {"x":287,"y":1597,"w":87,"h":87}, + "frame": {"x":583,"y":1505,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -338,7 +338,7 @@ }, "sprites/blueprints/balancer-merger-inverse.png": { - "frame": {"x":348,"y":1124,"w":95,"h":93}, + "frame": {"x":716,"y":1215,"w":95,"h":93}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":1,"w":95,"h":93}, @@ -346,7 +346,7 @@ }, "sprites/blueprints/balancer-merger.png": { - "frame": {"x":449,"y":1182,"w":93,"h":93}, + "frame": {"x":4,"y":1081,"w":93,"h":93}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":1,"w":93,"h":93}, @@ -354,7 +354,7 @@ }, "sprites/blueprints/balancer-splitter-inverse.png": { - "frame": {"x":246,"y":1178,"w":95,"h":93}, + "frame": {"x":614,"y":1220,"w":95,"h":93}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":1,"w":95,"h":93}, @@ -362,7 +362,7 @@ }, "sprites/blueprints/balancer-splitter.png": { - "frame": {"x":347,"y":1223,"w":93,"h":93}, + "frame": {"x":103,"y":1081,"w":93,"h":93}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":1,"w":93,"h":93}, @@ -378,7 +378,7 @@ }, "sprites/blueprints/belt_left.png": { - "frame": {"x":190,"y":1742,"w":87,"h":87}, + "frame": {"x":676,"y":1597,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -386,7 +386,7 @@ }, "sprites/blueprints/belt_right.png": { - "frame": {"x":97,"y":1752,"w":87,"h":87}, + "frame": {"x":572,"y":1598,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -394,7 +394,7 @@ }, "sprites/blueprints/belt_top.png": { - "frame": {"x":460,"y":1829,"w":78,"h":96}, + "frame": {"x":853,"y":1669,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -402,7 +402,7 @@ }, "sprites/blueprints/constant_signal.png": { - "frame": {"x":945,"y":519,"w":71,"h":85}, + "frame": {"x":946,"y":245,"w":71,"h":85}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":13,"y":0,"w":71,"h":85}, @@ -426,7 +426,7 @@ }, "sprites/blueprints/display.png": { - "frame": {"x":4,"y":1777,"w":86,"h":91}, + "frame": {"x":474,"y":1663,"w":86,"h":91}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":5,"y":5,"w":86,"h":91}, @@ -442,15 +442,15 @@ }, "sprites/blueprints/lever.png": { - "frame": {"x":945,"y":427,"w":75,"h":86}, + "frame": {"x":283,"y":683,"w":68,"h":78}, "rotated": false, "trimmed": true, - "spriteSourceSize": {"x":11,"y":3,"w":75,"h":86}, + "spriteSourceSize": {"x":14,"y":6,"w":68,"h":78}, "sourceSize": {"w":96,"h":96} }, "sprites/blueprints/logic_gate-not.png": { - "frame": {"x":937,"y":1334,"w":83,"h":96}, + "frame": {"x":816,"y":1320,"w":83,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":7,"y":0,"w":83,"h":96}, @@ -458,7 +458,7 @@ }, "sprites/blueprints/logic_gate-or.png": { - "frame": {"x":250,"y":928,"w":96,"h":82}, + "frame": {"x":525,"y":1012,"w":96,"h":82}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":82}, @@ -466,7 +466,7 @@ }, "sprites/blueprints/logic_gate-transistor.png": { - "frame": {"x":461,"y":718,"w":68,"h":96}, + "frame": {"x":945,"y":480,"w":68,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":68,"h":96}, @@ -482,7 +482,7 @@ }, "sprites/blueprints/logic_gate.png": { - "frame": {"x":556,"y":1012,"w":96,"h":89}, + "frame": {"x":321,"y":922,"w":96,"h":89}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":89}, @@ -490,7 +490,7 @@ }, "sprites/blueprints/miner-chainable.png": { - "frame": {"x":446,"y":1281,"w":92,"h":96}, + "frame": {"x":4,"y":1277,"w":92,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":0,"w":92,"h":96}, @@ -498,7 +498,7 @@ }, "sprites/blueprints/miner.png": { - "frame": {"x":746,"y":1253,"w":92,"h":96}, + "frame": {"x":301,"y":1234,"w":92,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":0,"w":92,"h":96}, @@ -546,7 +546,7 @@ }, "sprites/blueprints/reader.png": { - "frame": {"x":106,"y":1097,"w":95,"h":96}, + "frame": {"x":514,"y":1100,"w":95,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":95,"h":96}, @@ -554,7 +554,7 @@ }, "sprites/blueprints/rotater-ccw.png": { - "frame": {"x":917,"y":814,"w":96,"h":96}, + "frame": {"x":921,"y":888,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -570,7 +570,7 @@ }, "sprites/blueprints/rotater.png": { - "frame": {"x":359,"y":718,"w":96,"h":96}, + "frame": {"x":357,"y":718,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -594,7 +594,7 @@ }, "sprites/blueprints/trash.png": { - "frame": {"x":564,"y":808,"w":96,"h":96}, + "frame": {"x":459,"y":720,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -602,7 +602,7 @@ }, "sprites/blueprints/underground_belt_entry-tier2.png": { - "frame": {"x":548,"y":1188,"w":93,"h":84}, + "frame": {"x":103,"y":1180,"w":93,"h":84}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":2,"y":12,"w":93,"h":84}, @@ -610,7 +610,7 @@ }, "sprites/blueprints/underground_belt_entry.png": { - "frame": {"x":647,"y":1208,"w":93,"h":75}, + "frame": {"x":202,"y":1222,"w":93,"h":75}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":2,"y":21,"w":93,"h":75}, @@ -618,7 +618,7 @@ }, "sprites/blueprints/underground_belt_exit-tier2.png": { - "frame": {"x":551,"y":1107,"w":94,"h":75}, + "frame": {"x":905,"y":1393,"w":94,"h":75}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":2,"y":0,"w":94,"h":75}, @@ -626,7 +626,7 @@ }, "sprites/blueprints/underground_belt_exit.png": { - "frame": {"x":548,"y":1278,"w":93,"h":75}, + "frame": {"x":103,"y":1270,"w":93,"h":75}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":2,"y":0,"w":93,"h":75}, @@ -634,7 +634,7 @@ }, "sprites/blueprints/virtual_processor-analyzer.png": { - "frame": {"x":359,"y":820,"w":96,"h":96}, + "frame": {"x":357,"y":820,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -642,7 +642,7 @@ }, "sprites/blueprints/virtual_processor-painter.png": { - "frame": {"x":932,"y":610,"w":87,"h":96}, + "frame": {"x":932,"y":684,"w":87,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":87,"h":96}, @@ -650,7 +650,7 @@ }, "sprites/blueprints/virtual_processor-rotater.png": { - "frame": {"x":573,"y":1664,"w":79,"h":96}, + "frame": {"x":283,"y":1716,"w":79,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":79,"h":96}, @@ -658,7 +658,7 @@ }, "sprites/blueprints/virtual_processor-shapecompare.png": { - "frame": {"x":700,"y":1113,"w":96,"h":89}, + "frame": {"x":208,"y":970,"w":96,"h":89}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":89}, @@ -666,7 +666,7 @@ }, "sprites/blueprints/virtual_processor-stacker.png": { - "frame": {"x":931,"y":712,"w":87,"h":96}, + "frame": {"x":931,"y":786,"w":87,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":87,"h":96}, @@ -674,7 +674,7 @@ }, "sprites/blueprints/virtual_processor-unstacker.png": { - "frame": {"x":461,"y":878,"w":96,"h":96}, + "frame": {"x":561,"y":808,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -682,7 +682,7 @@ }, "sprites/blueprints/virtual_processor.png": { - "frame": {"x":352,"y":922,"w":96,"h":94}, + "frame": {"x":106,"y":886,"w":96,"h":94}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":2,"w":96,"h":94}, @@ -690,7 +690,7 @@ }, "sprites/blueprints/wire-cross.png": { - "frame": {"x":563,"y":910,"w":96,"h":96}, + "frame": {"x":459,"y":822,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -698,7 +698,7 @@ }, "sprites/blueprints/wire-split.png": { - "frame": {"x":106,"y":976,"w":96,"h":55}, + "frame": {"x":423,"y":1013,"w":96,"h":55}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":41,"w":96,"h":55}, @@ -714,7 +714,7 @@ }, "sprites/blueprints/wire.png": { - "frame": {"x":892,"y":909,"w":14,"h":96}, + "frame": {"x":723,"y":929,"w":14,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":41,"y":0,"w":14,"h":96}, @@ -722,7 +722,7 @@ }, "sprites/blueprints/wire_tunnel-coating.png": { - "frame": {"x":535,"y":782,"w":23,"h":90}, + "frame": {"x":250,"y":847,"w":23,"h":90}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":37,"y":3,"w":23,"h":90}, @@ -730,7 +730,7 @@ }, "sprites/blueprints/wire_tunnel.png": { - "frame": {"x":206,"y":1277,"w":93,"h":91}, + "frame": {"x":202,"y":1125,"w":93,"h":91}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":2,"y":2,"w":93,"h":91}, @@ -738,7 +738,7 @@ }, "sprites/buildings/balancer-merger-inverse.png": { - "frame": {"x":4,"y":1203,"w":94,"h":91}, + "frame": {"x":905,"y":1296,"w":94,"h":91}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":2,"w":94,"h":91}, @@ -746,7 +746,7 @@ }, "sprites/buildings/balancer-merger.png": { - "frame": {"x":104,"y":1296,"w":93,"h":91}, + "frame": {"x":301,"y":1137,"w":93,"h":91}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":2,"w":93,"h":91}, @@ -754,7 +754,7 @@ }, "sprites/buildings/balancer-splitter-inverse.png": { - "frame": {"x":105,"y":1199,"w":95,"h":91}, + "frame": {"x":715,"y":1314,"w":95,"h":91}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":2,"w":95,"h":91}, @@ -762,7 +762,7 @@ }, "sprites/buildings/balancer-splitter.png": { - "frame": {"x":4,"y":1300,"w":93,"h":91}, + "frame": {"x":4,"y":1180,"w":93,"h":91}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":2,"w":93,"h":91}, @@ -770,7 +770,7 @@ }, "sprites/buildings/balancer.png": { - "frame": {"x":740,"y":807,"w":171,"h":96}, + "frame": {"x":744,"y":807,"w":171,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":11,"y":0,"w":171,"h":96}, @@ -778,7 +778,7 @@ }, "sprites/buildings/belt_left.png": { - "frame": {"x":101,"y":1473,"w":87,"h":87}, + "frame": {"x":102,"y":1440,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":9,"w":87,"h":87}, @@ -786,7 +786,7 @@ }, "sprites/buildings/belt_right.png": { - "frame": {"x":97,"y":1566,"w":87,"h":87}, + "frame": {"x":190,"y":1594,"w":87,"h":87}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":9,"w":87,"h":87}, @@ -794,7 +794,7 @@ }, "sprites/buildings/belt_top.png": { - "frame": {"x":802,"y":1151,"w":78,"h":96}, + "frame": {"x":97,"y":1812,"w":78,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":78,"h":96}, @@ -802,7 +802,7 @@ }, "sprites/buildings/constant_signal.png": { - "frame": {"x":283,"y":683,"w":70,"h":85}, + "frame": {"x":946,"y":336,"w":70,"h":85}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":13,"y":0,"w":70,"h":85}, @@ -826,7 +826,7 @@ }, "sprites/buildings/display.png": { - "frame": {"x":779,"y":1596,"w":84,"h":90}, + "frame": {"x":376,"y":1696,"w":84,"h":90}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":6,"y":6,"w":84,"h":90}, @@ -850,15 +850,15 @@ }, "sprites/buildings/lever.png": { - "frame": {"x":946,"y":245,"w":73,"h":85}, + "frame": {"x":674,"y":706,"w":66,"h":77}, "rotated": false, "trimmed": true, - "spriteSourceSize": {"x":12,"y":3,"w":73,"h":85}, + "spriteSourceSize": {"x":15,"y":6,"w":66,"h":77}, "sourceSize": {"w":96,"h":96} }, "sprites/buildings/logic_gate-not.png": { - "frame": {"x":673,"y":1634,"w":82,"h":96}, + "frame": {"x":817,"y":1218,"w":82,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":8,"y":0,"w":82,"h":96}, @@ -866,7 +866,7 @@ }, "sprites/buildings/logic_gate-or.png": { - "frame": {"x":106,"y":887,"w":96,"h":83}, + "frame": {"x":423,"y":924,"w":96,"h":83}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":83}, @@ -874,7 +874,7 @@ }, "sprites/buildings/logic_gate-transistor.png": { - "frame": {"x":666,"y":812,"w":68,"h":96}, + "frame": {"x":945,"y":582,"w":68,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":68,"h":96}, @@ -882,7 +882,7 @@ }, "sprites/buildings/logic_gate-xor.png": { - "frame": {"x":250,"y":827,"w":96,"h":95}, + "frame": {"x":106,"y":785,"w":96,"h":95}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":95}, @@ -890,7 +890,7 @@ }, "sprites/buildings/logic_gate.png": { - "frame": {"x":4,"y":887,"w":96,"h":88}, + "frame": {"x":4,"y":987,"w":96,"h":88}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":88}, @@ -898,7 +898,7 @@ }, "sprites/buildings/miner-chainable.png": { - "frame": {"x":4,"y":1397,"w":91,"h":95}, + "frame": {"x":399,"y":1316,"w":91,"h":95}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":0,"w":91,"h":95}, @@ -906,7 +906,7 @@ }, "sprites/buildings/miner.png": { - "frame": {"x":403,"y":1383,"w":91,"h":95}, + "frame": {"x":300,"y":1336,"w":91,"h":95}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":0,"w":91,"h":95}, @@ -954,7 +954,7 @@ }, "sprites/buildings/reader.png": { - "frame": {"x":4,"y":1101,"w":95,"h":96}, + "frame": {"x":412,"y":1134,"w":95,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":95,"h":96}, @@ -962,7 +962,7 @@ }, "sprites/buildings/rotater-ccw.png": { - "frame": {"x":349,"y":1022,"w":95,"h":96}, + "frame": {"x":720,"y":1113,"w":95,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":95,"h":96}, @@ -970,7 +970,7 @@ }, "sprites/buildings/rotater-rotate180.png": { - "frame": {"x":247,"y":1076,"w":95,"h":96}, + "frame": {"x":615,"y":1118,"w":95,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":95,"h":96}, @@ -978,7 +978,7 @@ }, "sprites/buildings/rotater.png": { - "frame": {"x":450,"y":1080,"w":95,"h":96}, + "frame": {"x":513,"y":1202,"w":95,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":95,"h":96}, @@ -1002,7 +1002,7 @@ }, "sprites/buildings/trash.png": { - "frame": {"x":740,"y":909,"w":96,"h":96}, + "frame": {"x":561,"y":910,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -1010,7 +1010,7 @@ }, "sprites/buildings/underground_belt_entry-tier2.png": { - "frame": {"x":544,"y":1359,"w":92,"h":83}, + "frame": {"x":102,"y":1351,"w":92,"h":83}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":13,"w":92,"h":83}, @@ -1018,7 +1018,7 @@ }, "sprites/buildings/underground_belt_entry.png": { - "frame": {"x":305,"y":1322,"w":92,"h":74}, + "frame": {"x":4,"y":1379,"w":92,"h":74}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":22,"w":92,"h":74}, @@ -1026,7 +1026,7 @@ }, "sprites/buildings/underground_belt_exit-tier2.png": { - "frame": {"x":203,"y":1374,"w":92,"h":74}, + "frame": {"x":399,"y":1236,"w":92,"h":74}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":0,"w":92,"h":74}, @@ -1034,7 +1034,7 @@ }, "sprites/buildings/underground_belt_exit.png": { - "frame": {"x":103,"y":1393,"w":92,"h":74}, + "frame": {"x":497,"y":1304,"w":92,"h":74}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":0,"w":92,"h":74}, @@ -1042,7 +1042,7 @@ }, "sprites/buildings/virtual_processor-analyzer.png": { - "frame": {"x":912,"y":916,"w":96,"h":96}, + "frame": {"x":744,"y":909,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -1050,7 +1050,7 @@ }, "sprites/buildings/virtual_processor-painter.png": { - "frame": {"x":301,"y":1402,"w":87,"h":96}, + "frame": {"x":627,"y":1016,"w":87,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":87,"h":96}, @@ -1058,7 +1058,7 @@ }, "sprites/buildings/virtual_processor-rotater.png": { - "frame": {"x":473,"y":1727,"w":79,"h":96}, + "frame": {"x":190,"y":1780,"w":79,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":79,"h":96}, @@ -1066,7 +1066,7 @@ }, "sprites/buildings/virtual_processor-shapecompare.png": { - "frame": {"x":886,"y":1222,"w":96,"h":89}, + "frame": {"x":106,"y":986,"w":96,"h":89}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":89}, @@ -1074,7 +1074,7 @@ }, "sprites/buildings/virtual_processor-stacker.png": { - "frame": {"x":201,"y":1454,"w":87,"h":96}, + "frame": {"x":200,"y":1399,"w":87,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":9,"y":0,"w":87,"h":96}, @@ -1082,7 +1082,7 @@ }, "sprites/buildings/virtual_processor-unstacker.png": { - "frame": {"x":908,"y":1018,"w":96,"h":96}, + "frame": {"x":743,"y":1011,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -1090,7 +1090,7 @@ }, "sprites/buildings/virtual_processor.png": { - "frame": {"x":454,"y":980,"w":96,"h":94}, + "frame": {"x":4,"y":887,"w":96,"h":94}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":2,"w":96,"h":94}, @@ -1098,7 +1098,7 @@ }, "sprites/buildings/wire-cross.png": { - "frame": {"x":724,"y":1011,"w":96,"h":96}, + "frame": {"x":914,"y":990,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -1106,7 +1106,7 @@ }, "sprites/buildings/wire-split.png": { - "frame": {"x":4,"y":981,"w":96,"h":54}, + "frame": {"x":310,"y":1017,"w":96,"h":54}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":42,"w":96,"h":54}, @@ -1122,7 +1122,7 @@ }, "sprites/buildings/wire.png": { - "frame": {"x":890,"y":1011,"w":12,"h":96}, + "frame": {"x":896,"y":909,"w":12,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":42,"y":0,"w":12,"h":96}, @@ -1138,7 +1138,7 @@ }, "sprites/buildings/wire_tunnel.png": { - "frame": {"x":647,"y":1289,"w":92,"h":90}, + "frame": {"x":202,"y":1303,"w":92,"h":90}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":3,"y":3,"w":92,"h":90}, @@ -1146,7 +1146,7 @@ }, "sprites/colors/blue.png": { - "frame": {"x":826,"y":1049,"w":36,"h":34}, + "frame": {"x":845,"y":1100,"w":36,"h":34}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34}, @@ -1154,7 +1154,7 @@ }, "sprites/colors/cyan.png": { - "frame": {"x":826,"y":1089,"w":36,"h":34}, + "frame": {"x":208,"y":785,"w":36,"h":34}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34}, @@ -1162,7 +1162,7 @@ }, "sprites/colors/green.png": { - "frame": {"x":208,"y":785,"w":36,"h":34}, + "frame": {"x":208,"y":825,"w":36,"h":34}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34}, @@ -1170,7 +1170,7 @@ }, "sprites/colors/purple.png": { - "frame": {"x":208,"y":825,"w":36,"h":34}, + "frame": {"x":208,"y":865,"w":36,"h":34}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34}, @@ -1178,7 +1178,7 @@ }, "sprites/colors/red.png": { - "frame": {"x":208,"y":865,"w":36,"h":34}, + "frame": {"x":208,"y":905,"w":36,"h":34}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34}, @@ -1186,7 +1186,7 @@ }, "sprites/colors/uncolored.png": { - "frame": {"x":658,"y":1035,"w":36,"h":34}, + "frame": {"x":279,"y":850,"w":36,"h":34}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34}, @@ -1194,7 +1194,7 @@ }, "sprites/colors/white.png": { - "frame": {"x":658,"y":1075,"w":36,"h":34}, + "frame": {"x":279,"y":890,"w":36,"h":34}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34}, @@ -1202,7 +1202,7 @@ }, "sprites/colors/yellow.png": { - "frame": {"x":208,"y":905,"w":36,"h":34}, + "frame": {"x":279,"y":930,"w":36,"h":34}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":2,"w":36,"h":34}, @@ -1226,7 +1226,7 @@ }, "sprites/misc/hub_direction_indicator.png": { - "frame": {"x":988,"y":1222,"w":32,"h":32}, + "frame": {"x":952,"y":1591,"w":32,"h":32}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":32,"h":32}, @@ -1234,7 +1234,7 @@ }, "sprites/misc/processor_disabled.png": { - "frame": {"x":665,"y":974,"w":53,"h":55}, + "frame": {"x":663,"y":955,"w":53,"h":55}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":6,"y":6,"w":53,"h":55}, @@ -1242,7 +1242,7 @@ }, "sprites/misc/processor_disconnected.png": { - "frame": {"x":842,"y":909,"w":44,"h":57}, + "frame": {"x":846,"y":909,"w":44,"h":57}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":11,"y":5,"w":44,"h":57}, @@ -1250,7 +1250,7 @@ }, "sprites/misc/reader_overlay.png": { - "frame": {"x":283,"y":774,"w":70,"h":47}, + "frame": {"x":945,"y":427,"w":70,"h":47}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":13,"y":25,"w":70,"h":47}, @@ -1258,7 +1258,7 @@ }, "sprites/misc/slot_bad_arrow.png": { - "frame": {"x":535,"y":752,"w":24,"h":24}, + "frame": {"x":250,"y":817,"w":24,"h":24}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":1,"w":24,"h":24}, @@ -1266,7 +1266,7 @@ }, "sprites/misc/slot_good_arrow.png": { - "frame": {"x":535,"y":720,"w":24,"h":26}, + "frame": {"x":250,"y":785,"w":24,"h":26}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":1,"y":0,"w":24,"h":26}, @@ -1274,7 +1274,7 @@ }, "sprites/misc/storage_overlay.png": { - "frame": {"x":674,"y":776,"w":60,"h":30}, + "frame": {"x":663,"y":859,"w":60,"h":30}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":60,"h":30}, @@ -1298,7 +1298,7 @@ }, "sprites/wires/boolean_true.png": { - "frame": {"x":508,"y":820,"w":15,"h":28}, + "frame": {"x":723,"y":895,"w":15,"h":28}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":7,"y":3,"w":15,"h":28}, @@ -1306,7 +1306,7 @@ }, "sprites/wires/display/blue.png": { - "frame": {"x":208,"y":945,"w":33,"h":33}, + "frame": {"x":821,"y":1140,"w":33,"h":33}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33}, @@ -1314,7 +1314,7 @@ }, "sprites/wires/display/cyan.png": { - "frame": {"x":208,"y":984,"w":33,"h":33}, + "frame": {"x":821,"y":1179,"w":33,"h":33}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33}, @@ -1322,7 +1322,7 @@ }, "sprites/wires/display/green.png": { - "frame": {"x":208,"y":1023,"w":33,"h":33}, + "frame": {"x":967,"y":1474,"w":33,"h":33}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33}, @@ -1330,7 +1330,7 @@ }, "sprites/wires/display/purple.png": { - "frame": {"x":208,"y":1062,"w":33,"h":33}, + "frame": {"x":967,"y":1513,"w":33,"h":33}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33}, @@ -1338,7 +1338,7 @@ }, "sprites/wires/display/red.png": { - "frame": {"x":207,"y":1101,"w":33,"h":33}, + "frame": {"x":967,"y":1552,"w":33,"h":33}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33}, @@ -1346,7 +1346,7 @@ }, "sprites/wires/display/white.png": { - "frame": {"x":207,"y":1140,"w":33,"h":33}, + "frame": {"x":172,"y":1984,"w":33,"h":33}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33}, @@ -1354,7 +1354,7 @@ }, "sprites/wires/display/yellow.png": { - "frame": {"x":207,"y":1179,"w":33,"h":33}, + "frame": {"x":211,"y":1984,"w":33,"h":33}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":33,"h":33}, @@ -1362,15 +1362,15 @@ }, "sprites/wires/lever_on.png": { - "frame": {"x":946,"y":336,"w":73,"h":85}, + "frame": {"x":283,"y":767,"w":68,"h":77}, "rotated": false, "trimmed": true, - "spriteSourceSize": {"x":12,"y":3,"w":73,"h":85}, + "spriteSourceSize": {"x":14,"y":6,"w":68,"h":77}, "sourceSize": {"w":96,"h":96} }, "sprites/wires/logical_acceptor.png": { - "frame": {"x":842,"y":972,"w":42,"h":71}, + "frame": {"x":846,"y":972,"w":42,"h":71}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":28,"y":0,"w":42,"h":71}, @@ -1378,7 +1378,7 @@ }, "sprites/wires/logical_ejector.png": { - "frame": {"x":461,"y":820,"w":41,"h":45}, + "frame": {"x":845,"y":1049,"w":41,"h":45}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":29,"y":0,"w":41,"h":45}, @@ -1386,7 +1386,7 @@ }, "sprites/wires/network_conflict.png": { - "frame": {"x":988,"y":1298,"w":32,"h":30}, + "frame": {"x":952,"y":1667,"w":32,"h":30}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":1,"w":32,"h":30}, @@ -1402,7 +1402,7 @@ }, "sprites/wires/overlay_tile.png": { - "frame": {"x":674,"y":706,"w":64,"h":64}, + "frame": {"x":674,"y":789,"w":64,"h":64}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":64,"h":64}, @@ -1410,7 +1410,7 @@ }, "sprites/wires/sets/color_cross.png": { - "frame": {"x":904,"y":1120,"w":96,"h":96}, + "frame": {"x":912,"y":1092,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -1418,7 +1418,7 @@ }, "sprites/wires/sets/color_forward.png": { - "frame": {"x":868,"y":1049,"w":12,"h":96}, + "frame": {"x":894,"y":1011,"w":12,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":42,"y":0,"w":12,"h":96}, @@ -1426,7 +1426,7 @@ }, "sprites/wires/sets/color_split.png": { - "frame": {"x":247,"y":1016,"w":96,"h":54}, + "frame": {"x":208,"y":1065,"w":96,"h":54}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":42,"w":96,"h":54}, @@ -1442,7 +1442,7 @@ }, "sprites/wires/sets/conflict_cross.png": { - "frame": {"x":4,"y":785,"w":96,"h":96}, + "frame": {"x":905,"y":1194,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -1450,7 +1450,7 @@ }, "sprites/wires/sets/conflict_forward.png": { - "frame": {"x":886,"y":1113,"w":12,"h":96}, + "frame": {"x":887,"y":1113,"w":12,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":42,"y":0,"w":12,"h":96}, @@ -1458,7 +1458,7 @@ }, "sprites/wires/sets/conflict_split.png": { - "frame": {"x":106,"y":1037,"w":96,"h":54}, + "frame": {"x":412,"y":1074,"w":96,"h":54}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":42,"w":96,"h":54}, @@ -1474,7 +1474,7 @@ }, "sprites/wires/sets/regular_cross.png": { - "frame": {"x":724,"y":1011,"w":96,"h":96}, + "frame": {"x":914,"y":990,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -1482,7 +1482,7 @@ }, "sprites/wires/sets/regular_forward.png": { - "frame": {"x":890,"y":1011,"w":12,"h":96}, + "frame": {"x":896,"y":909,"w":12,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":42,"y":0,"w":12,"h":96}, @@ -1490,7 +1490,7 @@ }, "sprites/wires/sets/regular_split.png": { - "frame": {"x":4,"y":981,"w":96,"h":54}, + "frame": {"x":310,"y":1017,"w":96,"h":54}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":42,"w":96,"h":54}, @@ -1506,7 +1506,7 @@ }, "sprites/wires/sets/shape_cross.png": { - "frame": {"x":106,"y":785,"w":96,"h":96}, + "frame": {"x":4,"y":785,"w":96,"h":96}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":96,"h":96}, @@ -1514,7 +1514,7 @@ }, "sprites/wires/sets/shape_forward.png": { - "frame": {"x":1006,"y":1120,"w":12,"h":96}, + "frame": {"x":1007,"y":1194,"w":12,"h":96}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":42,"y":0,"w":12,"h":96}, @@ -1522,7 +1522,7 @@ }, "sprites/wires/sets/shape_split.png": { - "frame": {"x":4,"y":1041,"w":96,"h":54}, + "frame": {"x":310,"y":1077,"w":96,"h":54}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":0,"y":42,"w":96,"h":54}, @@ -1530,7 +1530,7 @@ }, "sprites/wires/sets/shape_turn.png": { - "frame": {"x":665,"y":914,"w":54,"h":54}, + "frame": {"x":663,"y":895,"w":54,"h":54}, "rotated": false, "trimmed": true, "spriteSourceSize": {"x":42,"y":42,"w":54,"h":54}, @@ -1538,7 +1538,7 @@ }, "sprites/wires/wires_preview.png": { - "frame": {"x":988,"y":1260,"w":32,"h":32}, + "frame": {"x":952,"y":1629,"w":32,"h":32}, "rotated": false, "trimmed": false, "spriteSourceSize": {"x":0,"y":0,"w":32,"h":32}, @@ -1551,6 +1551,6 @@ "format": "RGBA8888", "size": {"w":1024,"h":2048}, "scale": "0.5", - "smartupdate": "$TexturePacker:SmartUpdate:dac17f2501c07c842209cdd1895313a9:e5152751740891546eb27095657f7239:908b89f5ca8ff73e331a35a3b14d0604$" + "smartupdate": "$TexturePacker:SmartUpdate:5429cdf3b92834776437a91974e89d3c:fa61fb225cd312db144ce6a38d97871b:908b89f5ca8ff73e331a35a3b14d0604$" } } diff --git a/res_built/atlas/atlas0_mq.png b/res_built/atlas/atlas0_mq.png index 22dab8b0..50e3181d 100644 Binary files a/res_built/atlas/atlas0_mq.png and b/res_built/atlas/atlas0_mq.png differ diff --git a/res_raw/sprites/blueprints/lever.png b/res_raw/sprites/blueprints/lever.png index 84ef5f03..cca2ccea 100644 Binary files a/res_raw/sprites/blueprints/lever.png and b/res_raw/sprites/blueprints/lever.png differ diff --git a/res_raw/sprites/blueprints/rotater-rotate180.png b/res_raw/sprites/blueprints/rotater-rotate180.png index 1af0176a..e27c78e5 100644 Binary files a/res_raw/sprites/blueprints/rotater-rotate180.png and b/res_raw/sprites/blueprints/rotater-rotate180.png differ diff --git a/res_raw/sprites/buildings/lever.png b/res_raw/sprites/buildings/lever.png index bdb6c8c8..fea5a18a 100644 Binary files a/res_raw/sprites/buildings/lever.png and b/res_raw/sprites/buildings/lever.png differ diff --git a/res_raw/sprites/buildings/rotater-rotate180.png b/res_raw/sprites/buildings/rotater-rotate180.png index 3abd5c44..c5969351 100644 Binary files a/res_raw/sprites/buildings/rotater-rotate180.png and b/res_raw/sprites/buildings/rotater-rotate180.png differ diff --git a/res_raw/sprites/wires/lever_on.png b/res_raw/sprites/wires/lever_on.png index f6a04e16..55aad16c 100644 Binary files a/res_raw/sprites/wires/lever_on.png and b/res_raw/sprites/wires/lever_on.png differ diff --git a/src/css/resources.scss b/src/css/resources.scss index d553aa93..b7b358c9 100644 --- a/src/css/resources.scss +++ b/src/css/resources.scss @@ -10,7 +10,8 @@ $buildings: belt, cutter, miner, mixer, painter, rotater, balancer, stacker, tra $buildingsAndVariants: belt, balancer, balancer-merger, balancer-splitter, underground_belt, underground_belt-tier2, miner, miner-chainable, cutter, cutter-quad, rotater, rotater-ccw, rotater-fl, - stacker, mixer, painter, painter-double, painter-quad, trash, storage, reader; + stacker, mixer, painter, painter-double, painter-quad, trash, storage, reader, rotater-rotate180, lever, + display, constant_signal; @each $building in $buildingsAndVariants { [data-icon="building_tutorials/#{$building}.png"] { /* @load-async */ @@ -33,6 +34,10 @@ $buildingsAndVariants: belt, balancer, balancer-merger, balancer-splitter, under /* @load-async */ background-image: uiResource("res/ui/building_tutorials/balancer-splitter.png") !important; } +[data-icon="building_tutorials/filter.png"] { + /* @load-async */ + background-image: uiResource("res/ui/building_tutorials/lever.png") !important; +} $icons: notification_saved, notification_success, notification_upgrade; @each $icon in $icons { diff --git a/src/css/states/main_menu.scss b/src/css/states/main_menu.scss index 985ad112..455bcf6c 100644 --- a/src/css/states/main_menu.scss +++ b/src/css/states/main_menu.scss @@ -344,10 +344,14 @@ align-self: center; justify-self: center; @include IncreasedClickArea(0px); + background: #44484a center center / 40% no-repeat; + } + button.resumeGame { + background-color: #44484a; & { /* @load-async */ - background: #44484a uiResource("icons/play.png") center center / 40% no-repeat; + background-image: uiResource("icons/play.png"); } } diff --git a/src/css/states/settings.scss b/src/css/states/settings.scss index 24eabe6a..50afcaa3 100644 --- a/src/css/states/settings.scss +++ b/src/css/states/settings.scss @@ -11,6 +11,7 @@ @include StyleBelowWidth($layoutBreak) { grid-template-columns: 1fr; + grid-template-rows: auto 1fr; } .sidebar { diff --git a/src/js/game/buildings/reader.js b/src/js/game/buildings/reader.js index 7403747c..006d6582 100644 --- a/src/js/game/buildings/reader.js +++ b/src/js/game/buildings/reader.js @@ -9,6 +9,9 @@ import { GameRoot } from "../root"; import { BeltUnderlaysComponent } from "../components/belt_underlays"; import { BeltReaderComponent } from "../components/belt_reader"; import { enumHubGoalRewards } from "../tutorial_goals"; +import { generateMatrixRotations } from "../../core/utils"; + +const overlayMatrix = generateMatrixRotations([0, 1, 0, 0, 1, 0, 0, 1, 0]); export class MetaReaderBuilding extends MetaBuilding { constructor() { @@ -34,6 +37,17 @@ export class MetaReaderBuilding extends MetaBuilding { return true; } + /** + * @param {number} rotation + * @param {number} rotationVariant + * @param {string} variant + * @param {Entity} entity + * @returns {Array|null} + */ + getSpecialOverlayRenderMatrix(rotation, rotationVariant, variant, entity) { + return overlayMatrix[rotation]; + } + /** * Creates the entity at the given location * @param {Entity} entity diff --git a/src/js/game/buildings/rotater.js b/src/js/game/buildings/rotater.js index 23659495..7df94d16 100644 --- a/src/js/game/buildings/rotater.js +++ b/src/js/game/buildings/rotater.js @@ -15,6 +15,7 @@ export const enumRotaterVariants = { ccw: "ccw", rotate180: "rotate180" }; const overlayMatrices = { [defaultBuildingVariant]: generateMatrixRotations([0, 1, 1, 1, 1, 0, 0, 1, 1]), [enumRotaterVariants.ccw]: generateMatrixRotations([1, 1, 0, 0, 1, 1, 1, 1, 0]), + [enumRotaterVariants.rotate180]: generateMatrixRotations([1, 1, 0, 1, 1, 1, 0, 1, 1]), }; export class MetaRotaterBuilding extends MetaBuilding { diff --git a/src/js/game/buildings/underground_belt.js b/src/js/game/buildings/underground_belt.js index 063932a1..2239b703 100644 --- a/src/js/game/buildings/underground_belt.js +++ b/src/js/game/buildings/underground_belt.js @@ -25,7 +25,7 @@ export const enumUndergroundBeltVariantToTier = { [enumUndergroundBeltVariants.tier2]: 1, }; -const colorsByRotationVariant = ["#6d9dff", "#51d723"]; +const colorsByRotationVariant = ["#6d9dff", "#9cad40"]; const overlayMatrices = [ // Sender diff --git a/src/js/game/hud/parts/keybinding_overlay.js b/src/js/game/hud/parts/keybinding_overlay.js index 834a7385..2a50e3fe 100644 --- a/src/js/game/hud/parts/keybinding_overlay.js +++ b/src/js/game/hud/parts/keybinding_overlay.js @@ -7,6 +7,7 @@ import { KEYCODE_RMB, KEYMAPPINGS, } from "../../key_action_mapper"; +import { enumHubGoalRewards } from "../../tutorial_goals"; import { BaseHUDPart } from "../base_hud_part"; import { DynamicDomAttach } from "../dynamic_dom_attach"; @@ -257,7 +258,8 @@ export class HUDKeybindingOverlay extends BaseHUDPart { // Switch layers label: T.ingame.keybindingsOverlay.switchLayers, keys: [k.ingame.switchLayers], - condition: () => true, + condition: () => + this.root.hubGoals.isRewardUnlocked(enumHubGoalRewards.reward_wires_filters_and_levers), }, ]; diff --git a/src/js/game/tutorial_goals_mappings.js b/src/js/game/tutorial_goals_mappings.js index 4ceb84bc..6cf5ce75 100644 --- a/src/js/game/tutorial_goals_mappings.js +++ b/src/js/game/tutorial_goals_mappings.js @@ -3,6 +3,7 @@ import { enumBalancerVariants, MetaBalancerBuilding } from "./buildings/balancer import { MetaConstantSignalBuilding } from "./buildings/constant_signal"; import { enumCutterVariants, MetaCutterBuilding } from "./buildings/cutter"; import { MetaDisplayBuilding } from "./buildings/display"; +import { MetaLeverBuilding } from "./buildings/lever"; import { enumMinerVariants, MetaMinerBuilding } from "./buildings/miner"; import { MetaMixerBuilding } from "./buildings/mixer"; import { enumPainterVariants, MetaPainterBuilding } from "./buildings/painter"; @@ -56,7 +57,9 @@ export const enumHubGoalRewardsToContentUnlocked = { [enumHubGoalRewards.reward_logic_gates]: null, // @TODO! [enumHubGoalRewards.reward_virtual_processing]: null, // @TODO! - [enumHubGoalRewards.reward_wires_filters_and_levers]: null, + [enumHubGoalRewards.reward_wires_filters_and_levers]: typed([ + [MetaLeverBuilding, defaultBuildingVariant], + ]), [enumHubGoalRewards.reward_freeplay]: null, [enumHubGoalRewards.reward_blueprints]: null, [enumHubGoalRewards.no_reward]: null, diff --git a/translations/base-en.yaml b/translations/base-en.yaml index 8e1f758e..7751cc3d 100644 --- a/translations/base-en.yaml +++ b/translations/base-en.yaml @@ -579,12 +579,12 @@ buildings: constant_signal: default: name: &constant_signal Constant Signal - description: Emits a constant signal (shape, color or boolean). + description: Emits a constant signal, which can be either a shape, color or boolean. lever: default: name: &lever Switch - description: Can be toggled to emit 1 / 0 + description: Can be toggled to emit a boolean signal, which can then be used to control for example an item filter. logic_gate: default: @@ -607,14 +607,12 @@ buildings: filter: default: name: &filter Filter - # TEMP - description: Only allows through items which match exactly the provided shape / color. If you put in a boolean 1, it allows everything through, if you put in a 0 it will allow nothing through. + description: Connect with a signal to route all matching items to the top and the remaining to the right. Can be controlled with boolean signals too. display: default: name: &display Display - # TEMP - description: Can be connected on the wires layer to show a color or shape. When inputting a boolean item, the display will be white if the value is 1. + description: Connect a signal to show it on the display! It can be a shape, color or boolean. reader: default: @@ -703,7 +701,7 @@ storyRewards: reward_splitter: title: Compact Splitter desc: >- - You have unlocked a merger variant of the balancer - It accepts one input and splits them into two! + You have unlocked a splitter variant of the balancer - It accepts one input and splits them into two! reward_belt_reader: title: Belt reader