From 61d18e122f1ec56102dda2f22268b0bb7b890872 Mon Sep 17 00:00:00 2001 From: VMSolidus Date: Mon, 17 Jun 2024 17:15:47 -0400 Subject: [PATCH] Reapply "Merge branch 'master' of https://github.com/VMSolidus/Einstein-Engines" This reverts commit 23f4302c4b246c6ce17c2d227eb3e1004e7c21fa. --- .github/workflows/changelog.yml | 4 +- .github/workflows/prtitlecase.yml | 34 +++ BuildChecker/BuildChecker.csproj | 4 +- BuildChecker/git_helper.py | 110 -------- BuildChecker/hooks/post-checkout | 13 - BuildChecker/hooks/post-merge | 5 - Content.Client/Gameplay/GameplayState.cs | 8 +- ...Screen.xaml => OverlayChatGameScreen.xaml} | 4 +- ....xaml.cs => OverlayChatGameScreen.xaml.cs} | 4 +- .../UserInterface/Screens/ScreenType.cs | 8 +- .../Systems/Chat/ChatUIController.cs | 16 +- .../Systems/Vote/VoteUIController.cs | 6 +- .../Cargo/Components/CargoPalletComponent.cs | 21 +- .../Cargo/Systems/CargoSystem.Orders.cs | 2 +- .../Cargo/Systems/CargoSystem.Shuttle.cs | 15 +- .../Ensnaring/EnsnareableSystem.Ensnaring.cs | 4 +- .../Explosion/EntitySystems/TriggerSystem.cs | 4 +- Content.Server/LandMines/LandMineComponent.cs | 9 +- Content.Server/LandMines/LandMineSystem.cs | 46 +-- Content.Server/Tiles/LavaSystem.cs | 4 +- Content.Shared/CCVar/CCVars.cs | 6 +- Content.Shared/Chasm/ChasmSystem.cs | 4 +- .../MovementSpeedModifierComponent.cs | 2 +- .../Physics/FrictionRemoverSystem.cs | 25 ++ Content.Shared/Slippery/SlipperySystem.cs | 4 +- .../Components/StepTriggerComponent.cs | 8 +- .../StepTrigger/Systems/StepTriggerSystem.cs | 41 ++- LEGAL.md | 4 +- README.md | 27 +- RUN_THIS.py | 13 - Resources/Audio/Effects/attributions.yml | 5 + Resources/Audio/Effects/beep_landmine.ogg | Bin 0 -> 6034 bytes Resources/Changelog/Changelog.yml | 44 ++- Resources/Credits/GitHub.txt | 2 +- Resources/Maps/Shuttles/trading_outpost.yml | 263 ++++++++++-------- .../Clothing/OuterClothing/wintercoats.yml | 40 +-- .../Prototypes/Entities/Mobs/Species/moth.yml | 4 +- .../Consumable/Drinks/drinks-cartons.yml | 23 +- .../Consumable/Drinks/trash_drinks.yml | 59 ++-- .../Entities/Objects/Misc/land_mine.yml | 8 +- .../Objects/Specific/Cargo/cargo_pallet.yml | 31 +++ .../Objects/Specific/Janitorial/janitor.yml | 5 + .../Structures/Decoration/curtains.yml | 4 +- .../Recipes/Construction/furniture.yml | 40 +-- .../equipped-OUTERCLOTHING.png | Bin 9460 -> 0 bytes .../equipped-OUTERCLOTHING.png | Bin 0 -> 10509 bytes .../icon.png | Bin .../meta.json | 0 .../equipped-OUTERCLOTHING.png | Bin 0 -> 9875 bytes .../icon.png | Bin .../meta.json | 0 .../equipped-OUTERCLOTHING.png | Bin 0 -> 10492 bytes .../icon.png | Bin .../meta.json | 0 .../equipped-OUTERCLOTHING.png | Bin 0 -> 9782 bytes .../icon.png | Bin .../meta.json | 0 .../equipped-OUTERCLOTHING.png | Bin 0 -> 10959 bytes .../icon.png | Bin .../meta.json | 0 .../equipped-OUTERCLOTHING.png | Bin 0 -> 9936 bytes .../icon.png | Bin .../meta.json | 0 .../equipped-OUTERCLOTHING.png | Bin 0 -> 10546 bytes .../icon.png | Bin .../meta.json | 0 .../equipped-OUTERCLOTHING.png | Bin 0 -> 9675 bytes .../icon.png | Bin .../meta.json | 0 .../equipped-OUTERCLOTHING.png | Bin 0 -> 10494 bytes .../icon.png | Bin .../meta.json | 0 .../equipped-OUTERCLOTHING.png | Bin 0 -> 10740 bytes .../icon.png | Bin .../meta.json | 0 .../equipped-OUTERCLOTHING.png | Bin 8727 -> 0 bytes .../equipped-OUTERCLOTHING.png | Bin 9455 -> 0 bytes .../equipped-OUTERCLOTHING.png | Bin 8689 -> 0 bytes .../equipped-OUTERCLOTHING.png | Bin 9750 -> 0 bytes .../equipped-OUTERCLOTHING.png | Bin 8865 -> 0 bytes .../equipped-OUTERCLOTHING.png | Bin 8433 -> 0 bytes .../equipped-OUTERCLOTHING.png | Bin 9422 -> 0 bytes .../equipped-OUTERCLOTHING.png | Bin 9418 -> 0 bytes .../equipped-OUTERCLOTHING.png | Bin 9578 -> 0 bytes .../cargo_pallets.rsi/cargo_pallet_buy.png | Bin 0 -> 551 bytes .../cargo_pallets.rsi/cargo_pallet_sell.png | Bin 0 -> 535 bytes .../Structures/cargo_pallets.rsi/meta.json | 17 ++ Scripts/bat/buildAllDebug.bat | 1 - Scripts/bat/buildAllRelease.bat | 1 - Scripts/bat/buildAllTools.bat | 1 - Scripts/sh/buildAllDebug.sh | 1 - Scripts/sh/buildAllRelease.sh | 1 - Scripts/sh/buildAllTools.sh | 1 - Tools/{changelog => changelogs}/changelog.js | 0 Tools/{changelog => changelogs}/package.json | 2 + Tools/prtitlecase/index.js | 19 ++ Tools/prtitlecase/package.json | 12 + shell.nix | 1 - 98 files changed, 584 insertions(+), 456 deletions(-) create mode 100644 .github/workflows/prtitlecase.yml delete mode 100644 BuildChecker/git_helper.py delete mode 100755 BuildChecker/hooks/post-checkout delete mode 100755 BuildChecker/hooks/post-merge rename Content.Client/UserInterface/Screens/{DefaultGameScreen.xaml => OverlayChatGameScreen.xaml} (96%) rename Content.Client/UserInterface/Screens/{DefaultGameScreen.xaml.cs => OverlayChatGameScreen.xaml.cs} (94%) create mode 100644 Content.Shared/Physics/FrictionRemoverSystem.cs delete mode 100755 RUN_THIS.py create mode 100644 Resources/Audio/Effects/beep_landmine.ogg delete mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/bc_corpo_jacket.rsi/equipped-OUTERCLOTHING.png create mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_bishop_cybernetics.rsi/equipped-OUTERCLOTHING.png rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{bc_corpo_jacket.rsi => corpo_jacket_bishop_cybernetics.rsi}/icon.png (100%) rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{bc_corpo_jacket.rsi => corpo_jacket_bishop_cybernetics.rsi}/meta.json (100%) create mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_cybersun.rsi/equipped-OUTERCLOTHING.png rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{cs_corpo_jacket.rsi => corpo_jacket_cybersun.rsi}/icon.png (100%) rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{cs_corpo_jacket.rsi => corpo_jacket_cybersun.rsi}/meta.json (100%) create mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_discount_dans.rsi/equipped-OUTERCLOTHING.png rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{dd_corpo_jacket.rsi => corpo_jacket_discount_dans.rsi}/icon.png (100%) rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{dd_corpo_jacket.rsi => corpo_jacket_discount_dans.rsi}/meta.json (100%) create mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_einstein_engines.rsi/equipped-OUTERCLOTHING.png rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{ee_corpo_jacket.rsi => corpo_jacket_einstein_engines.rsi}/icon.png (100%) rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{ee_corpo_jacket.rsi => corpo_jacket_einstein_engines.rsi}/meta.json (100%) create mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_five_points_armory.rsi/equipped-OUTERCLOTHING.png rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{fa_corpo_jacket.rsi => corpo_jacket_five_points_armory.rsi}/icon.png (100%) rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{fa_corpo_jacket.rsi => corpo_jacket_five_points_armory.rsi}/meta.json (100%) create mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_gilthari_exports.rsi/equipped-OUTERCLOTHING.png rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{ge_corpo_jacket.rsi => corpo_jacket_gilthari_exports.rsi}/icon.png (100%) rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{ge_corpo_jacket.rsi => corpo_jacket_gilthari_exports.rsi}/meta.json (100%) create mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_hawkmoon_aquisitions.rsi/equipped-OUTERCLOTHING.png rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{hm_corpo_jacket.rsi => corpo_jacket_hawkmoon_aquisitions.rsi}/icon.png (100%) rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{hi_corpo_jacket.rsi => corpo_jacket_hawkmoon_aquisitions.rsi}/meta.json (100%) create mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_hephestus_industries.rsi/equipped-OUTERCLOTHING.png rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{hi_corpo_jacket.rsi => corpo_jacket_hephestus_industries.rsi}/icon.png (100%) rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{hm_corpo_jacket.rsi => corpo_jacket_hephestus_industries.rsi}/meta.json (100%) create mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_interdyne.rsi/equipped-OUTERCLOTHING.png rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{id_corpo_jacket.rsi => corpo_jacket_interdyne.rsi}/icon.png (100%) rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{id_corpo_jacket.rsi => corpo_jacket_interdyne.rsi}/meta.json (100%) create mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_zeng_hu_pharma.rsi/equipped-OUTERCLOTHING.png rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{zh_corpo_jacket.rsi => corpo_jacket_zeng_hu_pharma.rsi}/icon.png (100%) rename Resources/Textures/Clothing/OuterClothing/WinterCoats/{zh_corpo_jacket.rsi => corpo_jacket_zeng_hu_pharma.rsi}/meta.json (100%) delete mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/cs_corpo_jacket.rsi/equipped-OUTERCLOTHING.png delete mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/dd_corpo_jacket.rsi/equipped-OUTERCLOTHING.png delete mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/ee_corpo_jacket.rsi/equipped-OUTERCLOTHING.png delete mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/fa_corpo_jacket.rsi/equipped-OUTERCLOTHING.png delete mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/ge_corpo_jacket.rsi/equipped-OUTERCLOTHING.png delete mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/hi_corpo_jacket.rsi/equipped-OUTERCLOTHING.png delete mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/hm_corpo_jacket.rsi/equipped-OUTERCLOTHING.png delete mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/id_corpo_jacket.rsi/equipped-OUTERCLOTHING.png delete mode 100644 Resources/Textures/Clothing/OuterClothing/WinterCoats/zh_corpo_jacket.rsi/equipped-OUTERCLOTHING.png create mode 100644 Resources/Textures/Structures/cargo_pallets.rsi/cargo_pallet_buy.png create mode 100644 Resources/Textures/Structures/cargo_pallets.rsi/cargo_pallet_sell.png create mode 100644 Resources/Textures/Structures/cargo_pallets.rsi/meta.json rename Tools/{changelog => changelogs}/changelog.js (100%) rename Tools/{changelog => changelogs}/package.json (68%) create mode 100644 Tools/prtitlecase/index.js create mode 100644 Tools/prtitlecase/package.json diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index a44cac2cd1a..877273d7645 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -35,14 +35,14 @@ jobs: - name: Install Dependencies run: | - cd "Tools/changelog" + cd "Tools/changelogs" npm install shell: bash continue-on-error: true - name: Generate Changelog run: | - cd "Tools/changelog" + cd "Tools/changelogs" node changelog.js shell: bash continue-on-error: true diff --git a/.github/workflows/prtitlecase.yml b/.github/workflows/prtitlecase.yml new file mode 100644 index 00000000000..0c5a38a4e8a --- /dev/null +++ b/.github/workflows/prtitlecase.yml @@ -0,0 +1,34 @@ +name: PR Title Case +on: + pull_request_target: + types: [opened, edited, synchronize] + +env: + GITHUB_TOKEN: ${{ secrets.BOT_TOKEN }} + PR_NUMBER: ${{ github.event.pull_request.number }} + +jobs: + prtitlecase: + runs-on: ubuntu-latest + steps: + - name: Checkout Master + uses: actions/checkout@v3 + with: + token: ${{ secrets.BOT_TOKEN }} + + - name: Setup Node + uses: actions/setup-node@v3 + with: + node-version: 18.x + + - name: Install Dependencies + run: | + cd "Tools/prtitlecase" + npm install + shell: bash + + - name: Change Title + run: | + cd "Tools/prtitlecase" + node src/index.js + shell: bash diff --git a/BuildChecker/BuildChecker.csproj b/BuildChecker/BuildChecker.csproj index 63d16fa9708..d4f9a412549 100644 --- a/BuildChecker/BuildChecker.csproj +++ b/BuildChecker/BuildChecker.csproj @@ -14,8 +14,6 @@ https://docs.microsoft.com/en-us/visualstudio/msbuild/msbuild --> - python3 - py -3 {C899FCA4-7037-4E49-ABC2-44DE72487110} .NETFramework, Version=v4.7.2 false @@ -39,7 +37,7 @@ https://docs.microsoft.com/en-us/visualstudio/msbuild/msbuild bin\DebugOpt\ - + diff --git a/BuildChecker/git_helper.py b/BuildChecker/git_helper.py deleted file mode 100644 index becd4506e82..00000000000 --- a/BuildChecker/git_helper.py +++ /dev/null @@ -1,110 +0,0 @@ -#!/usr/bin/env python3 -# Installs git hooks, updates them, updates submodules, that kind of thing. - -import subprocess -import sys -import os -import shutil -from pathlib import Path -from typing import List - -SOLUTION_PATH = Path("..") / "SpaceStation14.sln" -# If this doesn't match the saved version we overwrite them all. -CURRENT_HOOKS_VERSION = "2" -QUIET = len(sys.argv) == 2 and sys.argv[1] == "--quiet" - - -def run_command(command: List[str], capture: bool = False) -> subprocess.CompletedProcess: - """ - Runs a command with pretty output. - """ - text = ' '.join(command) - if not QUIET: - print("$ {}".format(text)) - - sys.stdout.flush() - - completed = None - - if capture: - completed = subprocess.run(command, cwd="..", stdout=subprocess.PIPE) - else: - completed = subprocess.run(command, cwd="..") - - if completed.returncode != 0: - print("Error: command exited with code {}!".format(completed.returncode)) - - return completed - - -def update_submodules(): - """ - Updates all submodules. - """ - - if ('GITHUB_ACTIONS' in os.environ): - return - - if os.path.isfile("DISABLE_SUBMODULE_AUTOUPDATE"): - return - - if shutil.which("git") is None: - raise FileNotFoundError("git not found in PATH") - - # If the status doesn't match, force VS to reload the solution. - # status = run_command(["git", "submodule", "status"], capture=True) - run_command(["git", "submodule", "update", "--init", "--recursive"]) - # status2 = run_command(["git", "submodule", "status"], capture=True) - - # Something changed. - # if status.stdout != status2.stdout: - # print("Git submodules changed. Reloading solution.") - # reset_solution() - - -def install_hooks(): - """ - Installs the necessary git hooks into .git/hooks. - """ - - # Read version file. - if os.path.isfile("INSTALLED_HOOKS_VERSION"): - with open("INSTALLED_HOOKS_VERSION", "r") as f: - if f.read() == CURRENT_HOOKS_VERSION: - if not QUIET: - print("No hooks change detected.") - return - - with open("INSTALLED_HOOKS_VERSION", "w") as f: - f.write(CURRENT_HOOKS_VERSION) - - print("Hooks need updating.") - - hooks_target_dir = Path("..")/".git"/"hooks" - hooks_source_dir = Path("hooks") - - # Clear entire tree since we need to kill deleted files too. - for filename in os.listdir(str(hooks_target_dir)): - os.remove(str(hooks_target_dir/filename)) - - for filename in os.listdir(str(hooks_source_dir)): - print("Copying hook {}".format(filename)) - shutil.copy2(str(hooks_source_dir/filename), - str(hooks_target_dir/filename)) - - -def reset_solution(): - """ - Force VS to think the solution has been changed to prompt the user to reload it, thus fixing any load errors. - """ - - with SOLUTION_PATH.open("r") as f: - content = f.read() - - with SOLUTION_PATH.open("w") as f: - f.write(content) - - -if __name__ == '__main__': - install_hooks() - update_submodules() diff --git a/BuildChecker/hooks/post-checkout b/BuildChecker/hooks/post-checkout deleted file mode 100755 index c5662445c27..00000000000 --- a/BuildChecker/hooks/post-checkout +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -gitroot=`git rev-parse --show-toplevel` - -cd "$gitroot/BuildChecker" - -if [[ `uname` == MINGW* || `uname` == CYGWIN* ]]; then - # Windows - py -3 git_helper.py --quiet -else - # Not Windows, so probably some other Unix thing. - python3 git_helper.py --quiet -fi diff --git a/BuildChecker/hooks/post-merge b/BuildChecker/hooks/post-merge deleted file mode 100755 index 85fe61d966c..00000000000 --- a/BuildChecker/hooks/post-merge +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash - -# Just call post-checkout since it does the same thing. -gitroot=`git rev-parse --show-toplevel` -bash "$gitroot/.git/hooks/post-checkout" diff --git a/Content.Client/Gameplay/GameplayState.cs b/Content.Client/Gameplay/GameplayState.cs index 1efee978f39..2ea16521e8f 100644 --- a/Content.Client/Gameplay/GameplayState.cs +++ b/Content.Client/Gameplay/GameplayState.cs @@ -93,17 +93,17 @@ private void LoadMainScreen() var screenTypeString = _configurationManager.GetCVar(CCVars.UILayout); if (!Enum.TryParse(screenTypeString, out ScreenType screenType)) { - screenType = default; + screenType = ScreenType.Separated; } switch (screenType) { - case ScreenType.Default: - _uiManager.LoadScreen(); - break; case ScreenType.Separated: _uiManager.LoadScreen(); break; + case ScreenType.Overlay: + _uiManager.LoadScreen(); + break; } _loadController.LoadScreen(); diff --git a/Content.Client/UserInterface/Screens/DefaultGameScreen.xaml b/Content.Client/UserInterface/Screens/OverlayChatGameScreen.xaml similarity index 96% rename from Content.Client/UserInterface/Screens/DefaultGameScreen.xaml rename to Content.Client/UserInterface/Screens/OverlayChatGameScreen.xaml index 54aeffe72c9..4ba820b3392 100644 --- a/Content.Client/UserInterface/Screens/DefaultGameScreen.xaml +++ b/Content.Client/UserInterface/Screens/OverlayChatGameScreen.xaml @@ -1,4 +1,4 @@ - - + diff --git a/Content.Client/UserInterface/Screens/DefaultGameScreen.xaml.cs b/Content.Client/UserInterface/Screens/OverlayChatGameScreen.xaml.cs similarity index 94% rename from Content.Client/UserInterface/Screens/DefaultGameScreen.xaml.cs rename to Content.Client/UserInterface/Screens/OverlayChatGameScreen.xaml.cs index 0fb1b7d507f..c45ec9d4a02 100644 --- a/Content.Client/UserInterface/Screens/DefaultGameScreen.xaml.cs +++ b/Content.Client/UserInterface/Screens/OverlayChatGameScreen.xaml.cs @@ -6,9 +6,9 @@ namespace Content.Client.UserInterface.Screens; [GenerateTypedNameReferences] -public sealed partial class DefaultGameScreen : InGameScreen +public sealed partial class OverlayChatGameScreen : InGameScreen { - public DefaultGameScreen() + public OverlayChatGameScreen() { RobustXamlLoader.Load(this); diff --git a/Content.Client/UserInterface/Screens/ScreenType.cs b/Content.Client/UserInterface/Screens/ScreenType.cs index 595dc79556d..039cd7b1287 100644 --- a/Content.Client/UserInterface/Screens/ScreenType.cs +++ b/Content.Client/UserInterface/Screens/ScreenType.cs @@ -3,11 +3,11 @@ namespace Content.Client.UserInterface.Screens; public enum ScreenType { /// - /// The modern SS14 user interface. + /// The classic SS13 user interface. /// - Default, + Separated, /// - /// The classic SS13 user interface. + /// The temporary SS14 user interface. /// - Separated + Overlay, } diff --git a/Content.Client/UserInterface/Systems/Chat/ChatUIController.cs b/Content.Client/UserInterface/Systems/Chat/ChatUIController.cs index 79c1909ebaf..ecc57561cd8 100644 --- a/Content.Client/UserInterface/Systems/Chat/ChatUIController.cs +++ b/Content.Client/UserInterface/Systems/Chat/ChatUIController.cs @@ -263,16 +263,16 @@ public void SetMainChat(bool setting) switch (UIManager.ActiveScreen) { - case DefaultGameScreen defaultScreen: - chatBox = defaultScreen.ChatBox; - chatSizeRaw = _config.GetCVar(CCVars.DefaultScreenChatSize); - SetChatSizing(chatSizeRaw, defaultScreen, setting); - break; case SeparatedChatGameScreen separatedScreen: chatBox = separatedScreen.ChatBox; chatSizeRaw = _config.GetCVar(CCVars.SeparatedScreenChatSize); SetChatSizing(chatSizeRaw, separatedScreen, setting); break; + case OverlayChatGameScreen overlayScreen: + chatBox = overlayScreen.ChatBox; + chatSizeRaw = _config.GetCVar(CCVars.OverlayScreenChatSize); + SetChatSizing(chatSizeRaw, overlayScreen, setting); + break; default: // this could be better? var maybeChat = UIManager.ActiveScreen.GetWidget(); @@ -321,12 +321,12 @@ private void StoreChatSize(Vector2 size) $"{size.X.ToString(CultureInfo.InvariantCulture)},{size.Y.ToString(CultureInfo.InvariantCulture)}"; switch (UIManager.ActiveScreen) { - case DefaultGameScreen _: - _config.SetCVar(CCVars.DefaultScreenChatSize, stringSize); - break; case SeparatedChatGameScreen _: _config.SetCVar(CCVars.SeparatedScreenChatSize, stringSize); break; + case OverlayChatGameScreen _: + _config.SetCVar(CCVars.OverlayScreenChatSize, stringSize); + break; default: // do nothing return; diff --git a/Content.Client/UserInterface/Systems/Vote/VoteUIController.cs b/Content.Client/UserInterface/Systems/Vote/VoteUIController.cs index 52d0348b798..ac37cebfa99 100644 --- a/Content.Client/UserInterface/Systems/Vote/VoteUIController.cs +++ b/Content.Client/UserInterface/Systems/Vote/VoteUIController.cs @@ -23,12 +23,12 @@ private void OnScreenLoad() { switch (UIManager.ActiveScreen) { - case DefaultGameScreen game: - _votes.SetPopupContainer(game.VoteMenu); - break; case SeparatedChatGameScreen separated: _votes.SetPopupContainer(separated.VoteMenu); break; + case OverlayChatGameScreen overlay: + _votes.SetPopupContainer(overlay.VoteMenu); + break; } } diff --git a/Content.Server/Cargo/Components/CargoPalletComponent.cs b/Content.Server/Cargo/Components/CargoPalletComponent.cs index ebf0be93e0c..cdfd0a3874f 100644 --- a/Content.Server/Cargo/Components/CargoPalletComponent.cs +++ b/Content.Server/Cargo/Components/CargoPalletComponent.cs @@ -1,7 +1,26 @@ namespace Content.Server.Cargo.Components; +using Content.Shared.Actions; +using Robust.Shared.Serialization.TypeSerializers.Implementations; /// /// Any entities intersecting when a shuttle is recalled will be sold. /// + +[Flags] +public enum BuySellType : byte +{ + Buy = 1 << 0, + Sell = 1 << 1, + All = Buy | Sell +} + + [RegisterComponent] -public sealed partial class CargoPalletComponent : Component {} +public sealed partial class CargoPalletComponent : Component +{ + /// + /// Whether the pad is a buy pad, a sell pad, or all. + /// + [DataField] + public BuySellType PalletType; +} diff --git a/Content.Server/Cargo/Systems/CargoSystem.Orders.cs b/Content.Server/Cargo/Systems/CargoSystem.Orders.cs index ebe66ff029e..d8b55a7237f 100644 --- a/Content.Server/Cargo/Systems/CargoSystem.Orders.cs +++ b/Content.Server/Cargo/Systems/CargoSystem.Orders.cs @@ -205,7 +205,7 @@ private void OnApproveOrderMessage(EntityUid uid, CargoOrderConsoleComponent com // Try to fulfill from any station where possible, if the pad is not occupied. foreach (var trade in _listEnts) { - var tradePads = GetCargoPallets(trade); + var tradePads = GetCargoPallets(trade, BuySellType.Buy); _random.Shuffle(tradePads); var freePads = GetFreeCargoPallets(trade, tradePads); diff --git a/Content.Server/Cargo/Systems/CargoSystem.Shuttle.cs b/Content.Server/Cargo/Systems/CargoSystem.Shuttle.cs index 3e39440da56..b8a491f4e89 100644 --- a/Content.Server/Cargo/Systems/CargoSystem.Shuttle.cs +++ b/Content.Server/Cargo/Systems/CargoSystem.Shuttle.cs @@ -198,13 +198,16 @@ private List GetProjectedOrders( /// private int GetCargoSpace(EntityUid gridUid) { - var space = GetCargoPallets(gridUid).Count; + var space = GetCargoPallets(gridUid, BuySellType.Buy).Count; return space; } - private List<(EntityUid Entity, CargoPalletComponent Component, TransformComponent PalletXform)> GetCargoPallets(EntityUid gridUid) + /// GetCargoPallets(gridUid, BuySellType.Sell) to return only Sell pads + /// GetCargoPallets(gridUid, BuySellType.Buy) to return only Buy pads + private List<(EntityUid Entity, CargoPalletComponent Component, TransformComponent PalletXform)> GetCargoPallets(EntityUid gridUid, BuySellType requestType = BuySellType.All) { _pads.Clear(); + var query = AllEntityQuery(); while (query.MoveNext(out var uid, out var comp, out var compXform)) @@ -215,7 +218,13 @@ private int GetCargoSpace(EntityUid gridUid) continue; } + if ((requestType & comp.PalletType) == 0) + { + continue; + } + _pads.Add((uid, comp, compXform)); + } return _pads; @@ -275,7 +284,7 @@ private void GetPalletGoods(EntityUid gridUid, out HashSet toSell, ou amount = 0; toSell = new HashSet(); - foreach (var (palletUid, _, _) in GetCargoPallets(gridUid)) + foreach (var (palletUid, _, _) in GetCargoPallets(gridUid, BuySellType.Sell)) { // Containers should already get the sell price of their children so can skip those. _setEnts.Clear(); diff --git a/Content.Server/Ensnaring/EnsnareableSystem.Ensnaring.cs b/Content.Server/Ensnaring/EnsnareableSystem.Ensnaring.cs index 169daca07ac..202d03bcda9 100644 --- a/Content.Server/Ensnaring/EnsnareableSystem.Ensnaring.cs +++ b/Content.Server/Ensnaring/EnsnareableSystem.Ensnaring.cs @@ -25,7 +25,7 @@ public void InitializeEnsnaring() { SubscribeLocalEvent(OnComponentRemove); SubscribeLocalEvent(AttemptStepTrigger); - SubscribeLocalEvent(OnStepTrigger); + SubscribeLocalEvent(OnStepTrigger); SubscribeLocalEvent(OnThrowHit); SubscribeLocalEvent(OnAttemptPacifiedThrow); } @@ -49,7 +49,7 @@ private void AttemptStepTrigger(EntityUid uid, EnsnaringComponent component, ref args.Continue = true; } - private void OnStepTrigger(EntityUid uid, EnsnaringComponent component, ref StepTriggeredEvent args) + private void OnStepTrigger(EntityUid uid, EnsnaringComponent component, ref StepTriggeredOffEvent args) { TryEnsnare(args.Tripper, uid, component); } diff --git a/Content.Server/Explosion/EntitySystems/TriggerSystem.cs b/Content.Server/Explosion/EntitySystems/TriggerSystem.cs index 9b9a042641f..e24de5a2f66 100644 --- a/Content.Server/Explosion/EntitySystems/TriggerSystem.cs +++ b/Content.Server/Explosion/EntitySystems/TriggerSystem.cs @@ -88,7 +88,7 @@ public override void Initialize() SubscribeLocalEvent(OnTriggerCollide); SubscribeLocalEvent(OnActivate); SubscribeLocalEvent(OnImplantTrigger); - SubscribeLocalEvent(OnStepTriggered); + SubscribeLocalEvent(OnStepTriggered); SubscribeLocalEvent(OnSlipTriggered); SubscribeLocalEvent(OnEmptyTriggered); @@ -228,7 +228,7 @@ private void OnImplantTrigger(EntityUid uid, TriggerImplantActionComponent compo args.Handled = Trigger(uid); } - private void OnStepTriggered(EntityUid uid, TriggerOnStepTriggerComponent component, ref StepTriggeredEvent args) + private void OnStepTriggered(EntityUid uid, TriggerOnStepTriggerComponent component, ref StepTriggeredOffEvent args) { Trigger(uid, args.Tripper); } diff --git a/Content.Server/LandMines/LandMineComponent.cs b/Content.Server/LandMines/LandMineComponent.cs index 63e1e4b99f0..1c4ba06691a 100644 --- a/Content.Server/LandMines/LandMineComponent.cs +++ b/Content.Server/LandMines/LandMineComponent.cs @@ -1,6 +1,13 @@ -namespace Content.Server.LandMines; +using Robust.Shared.Audio; + +namespace Content.Server.LandMines; [RegisterComponent] public sealed partial class LandMineComponent : Component { + /// + /// Trigger sound effect when stepping onto landmine + /// + [DataField, ViewVariables(VVAccess.ReadWrite)] + public SoundSpecifier? Sound; } diff --git a/Content.Server/LandMines/LandMineSystem.cs b/Content.Server/LandMines/LandMineSystem.cs index 78c48ef99ec..22dedb93375 100644 --- a/Content.Server/LandMines/LandMineSystem.cs +++ b/Content.Server/LandMines/LandMineSystem.cs @@ -1,43 +1,43 @@ -using Content.Server.Explosion.EntitySystems; +using Content.Server.Explosion.EntitySystems; using Content.Shared.Popups; -using Content.Shared.StepTrigger; using Content.Shared.StepTrigger.Systems; -using Robust.Shared.Player; +using Robust.Shared.Audio; +using Robust.Shared.Audio.Systems; namespace Content.Server.LandMines; public sealed class LandMineSystem : EntitySystem { + [Dependency] private readonly SharedAudioSystem _audioSystem = default!; [Dependency] private readonly SharedPopupSystem _popupSystem = default!; [Dependency] private readonly TriggerSystem _trigger = default!; - public override void Initialize() { - SubscribeLocalEvent(HandleTriggered); - SubscribeLocalEvent(HandleTriggerAttempt); + SubscribeLocalEvent(HandleStepOnTriggered); + SubscribeLocalEvent(HandleStepOffTriggered); + + SubscribeLocalEvent(HandleStepTriggerAttempt); } - private static void HandleTriggerAttempt( - EntityUid uid, - LandMineComponent component, - ref StepTriggerAttemptEvent args) + private void HandleStepOnTriggered(EntityUid uid, LandMineComponent component, ref StepTriggeredOnEvent args) { - args.Continue = true; + _popupSystem.PopupCoordinates( + Loc.GetString("land-mine-triggered", ("mine", uid)), + Transform(uid).Coordinates, + args.Tripper, + PopupType.LargeCaution); + + _audioSystem.PlayPvs(component.Sound, uid); } - private void HandleTriggered(EntityUid uid, LandMineComponent component, ref StepTriggeredEvent args) + private void HandleStepOffTriggered(EntityUid uid, LandMineComponent component, ref StepTriggeredOffEvent args) { - // This doesn't use TriggerOnStepTrigger since we don't want to display the popup if nothing happens - // and I didn't feel like making an `AfterTrigger` event - if (_trigger.Trigger(uid, args.Tripper)) - { - _popupSystem.PopupCoordinates( - Loc.GetString("land-mine-triggered", ("mine", uid)), - Transform(uid).Coordinates, - args.Tripper, - PopupType.LargeCaution); - } + _trigger.Trigger(uid, args.Tripper); } -} + private static void HandleStepTriggerAttempt(EntityUid uid, LandMineComponent component, ref StepTriggerAttemptEvent args) + { + args.Continue = true; + } +} diff --git a/Content.Server/Tiles/LavaSystem.cs b/Content.Server/Tiles/LavaSystem.cs index 7aee0b65010..51bd6f8475f 100644 --- a/Content.Server/Tiles/LavaSystem.cs +++ b/Content.Server/Tiles/LavaSystem.cs @@ -11,7 +11,7 @@ public sealed class LavaSystem : EntitySystem public override void Initialize() { base.Initialize(); - SubscribeLocalEvent(OnLavaStepTriggered); + SubscribeLocalEvent(OnLavaStepTriggered); SubscribeLocalEvent(OnLavaStepTriggerAttempt); } @@ -23,7 +23,7 @@ private void OnLavaStepTriggerAttempt(EntityUid uid, LavaComponent component, re args.Continue = true; } - private void OnLavaStepTriggered(EntityUid uid, LavaComponent component, ref StepTriggeredEvent args) + private void OnLavaStepTriggered(EntityUid uid, LavaComponent component, ref StepTriggeredOffEvent args) { var otherUid = args.Tripper; diff --git a/Content.Shared/CCVar/CCVars.cs b/Content.Shared/CCVar/CCVars.cs index f8943a9bf90..891c790d52c 100644 --- a/Content.Shared/CCVar/CCVars.cs +++ b/Content.Shared/CCVar/CCVars.cs @@ -1596,10 +1596,10 @@ public static readonly CVarDef */ public static readonly CVarDef UILayout = - CVarDef.Create("ui.layout", "Default", CVar.CLIENTONLY | CVar.ARCHIVE); + CVarDef.Create("ui.layout", "Separated", CVar.CLIENTONLY | CVar.ARCHIVE); - public static readonly CVarDef DefaultScreenChatSize = - CVarDef.Create("ui.default_chat_size", "", CVar.CLIENTONLY | CVar.ARCHIVE); + public static readonly CVarDef OverlayScreenChatSize = + CVarDef.Create("ui.overlay_chat_size", "", CVar.CLIENTONLY | CVar.ARCHIVE); public static readonly CVarDef SeparatedScreenChatSize = CVarDef.Create("ui.separated_chat_size", "0.6,0", CVar.CLIENTONLY | CVar.ARCHIVE); diff --git a/Content.Shared/Chasm/ChasmSystem.cs b/Content.Shared/Chasm/ChasmSystem.cs index 51299557dbd..86b8d4fc4d7 100644 --- a/Content.Shared/Chasm/ChasmSystem.cs +++ b/Content.Shared/Chasm/ChasmSystem.cs @@ -24,7 +24,7 @@ public override void Initialize() { base.Initialize(); - SubscribeLocalEvent(OnStepTriggered); + SubscribeLocalEvent(OnStepTriggered); SubscribeLocalEvent(OnStepTriggerAttempt); SubscribeLocalEvent(OnUpdateCanMove); } @@ -47,7 +47,7 @@ public override void Update(float frameTime) } } - private void OnStepTriggered(EntityUid uid, ChasmComponent component, ref StepTriggeredEvent args) + private void OnStepTriggered(EntityUid uid, ChasmComponent component, ref StepTriggeredOffEvent args) { // already doomed if (HasComp(args.Tripper)) diff --git a/Content.Shared/Movement/Components/MovementSpeedModifierComponent.cs b/Content.Shared/Movement/Components/MovementSpeedModifierComponent.cs index a0feab7052c..813a18f974c 100644 --- a/Content.Shared/Movement/Components/MovementSpeedModifierComponent.cs +++ b/Content.Shared/Movement/Components/MovementSpeedModifierComponent.cs @@ -14,7 +14,7 @@ public sealed partial class MovementSpeedModifierComponent : Component // Weightless public const float DefaultMinimumFrictionSpeed = 0.005f; public const float DefaultWeightlessFriction = 1f; - public const float DefaultWeightlessFrictionNoInput = 0.2f; + public const float DefaultWeightlessFrictionNoInput = 0f; public const float DefaultWeightlessModifier = 0.7f; public const float DefaultWeightlessAcceleration = 1f; diff --git a/Content.Shared/Physics/FrictionRemoverSystem.cs b/Content.Shared/Physics/FrictionRemoverSystem.cs new file mode 100644 index 00000000000..65bbe9e4d23 --- /dev/null +++ b/Content.Shared/Physics/FrictionRemoverSystem.cs @@ -0,0 +1,25 @@ +using Robust.Shared.Physics; +using Robust.Shared.Physics.Components; +using Robust.Shared.Physics.Systems; + +namespace Content.Shared.Physics; + +public sealed class FrictionRemoverSystem : EntitySystem +{ + [Dependency] private readonly SharedPhysicsSystem _physics = default!; + + + public override void Initialize() + { + base.Initialize(); + + SubscribeLocalEvent(RemoveDampening); + } + + + private void RemoveDampening(EntityUid uid, PhysicsComponent component, PhysicsSleepEvent args) + { + _physics.SetAngularDamping(uid, component, 0f, false); + _physics.SetLinearDamping(uid, component, 0f); + } +} diff --git a/Content.Shared/Slippery/SlipperySystem.cs b/Content.Shared/Slippery/SlipperySystem.cs index d20495cfa6c..ff8b597a0d5 100644 --- a/Content.Shared/Slippery/SlipperySystem.cs +++ b/Content.Shared/Slippery/SlipperySystem.cs @@ -31,14 +31,14 @@ public override void Initialize() base.Initialize(); SubscribeLocalEvent(HandleAttemptCollide); - SubscribeLocalEvent(HandleStepTrigger); + SubscribeLocalEvent(HandleStepTrigger); SubscribeLocalEvent(OnNoSlipAttempt); SubscribeLocalEvent(OnThrownSlipAttempt); // as long as slip-resistant mice are never added, this should be fine (otherwise a mouse-hat will transfer it's power to the wearer). SubscribeLocalEvent>((e, c, ev) => OnNoSlipAttempt(e, c, ev.Args)); } - private void HandleStepTrigger(EntityUid uid, SlipperyComponent component, ref StepTriggeredEvent args) + private void HandleStepTrigger(EntityUid uid, SlipperyComponent component, ref StepTriggeredOffEvent args) { TrySlip(uid, component, args.Tripper); } diff --git a/Content.Shared/StepTrigger/Components/StepTriggerComponent.cs b/Content.Shared/StepTrigger/Components/StepTriggerComponent.cs index f4731bf46ab..b8483d021a4 100644 --- a/Content.Shared/StepTrigger/Components/StepTriggerComponent.cs +++ b/Content.Shared/StepTrigger/Components/StepTriggerComponent.cs @@ -49,8 +49,14 @@ public sealed partial class StepTriggerComponent : Component /// If this is true, steptrigger will still occur on entities that are in air / weightless. They do not /// by default. /// - [DataField] + [DataField, AutoNetworkedField] public bool IgnoreWeightless; + + /// + /// Does this have separate "StepOn" and "StepOff" triggers. + /// + [DataField, AutoNetworkedField] + public bool StepOn = false; } [RegisterComponent] diff --git a/Content.Shared/StepTrigger/Systems/StepTriggerSystem.cs b/Content.Shared/StepTrigger/Systems/StepTriggerSystem.cs index ede39b2aa97..b4ac2cde756 100644 --- a/Content.Shared/StepTrigger/Systems/StepTriggerSystem.cs +++ b/Content.Shared/StepTrigger/Systems/StepTriggerSystem.cs @@ -11,6 +11,7 @@ public sealed class StepTriggerSystem : EntitySystem { [Dependency] private readonly EntityLookupSystem _entityLookup = default!; [Dependency] private readonly SharedGravitySystem _gravity = default!; + [Dependency] private readonly SharedMapSystem _map = default!; public override void Initialize() { @@ -40,7 +41,9 @@ public override void Update(float frameTime) while (enumerator.MoveNext(out var uid, out var active, out var trigger, out var transform)) { if (!Update(uid, trigger, transform, query)) + { continue; + } RemCompDeferred(uid, active); } @@ -56,7 +59,8 @@ private bool Update(EntityUid uid, StepTriggerComponent component, TransformComp if (component.Blacklist != null && TryComp(transform.GridUid, out var grid)) { - var anch = grid.GetAnchoredEntitiesEnumerator(grid.LocalToTile(transform.Coordinates)); + var positon = _map.LocalToTile(uid, grid, transform.Coordinates); + var anch = _map.GetAnchoredEntitiesEnumerator(uid, grid, positon); while (anch.MoveNext(out var ent)) { @@ -109,8 +113,16 @@ private void UpdateColliding(EntityUid uid, StepTriggerComponent component, Tran return; } - var ev = new StepTriggeredEvent { Source = uid, Tripper = otherUid }; - RaiseLocalEvent(uid, ref ev, true); + if (component.StepOn) + { + var evStep = new StepTriggeredOnEvent(uid, otherUid); + RaiseLocalEvent(uid, ref evStep); + } + else + { + var evStep = new StepTriggeredOffEvent(uid, otherUid); + RaiseLocalEvent(uid, ref evStep); + } component.CurrentlySteppedOn.Add(otherUid); Dirty(uid, component); @@ -130,7 +142,7 @@ private bool CanTrigger(EntityUid uid, EntityUid otherUid, StepTriggerComponent var msg = new StepTriggerAttemptEvent { Source = uid, Tripper = otherUid }; - RaiseLocalEvent(uid, ref msg, true); + RaiseLocalEvent(uid, ref msg); return msg.Continue && !msg.Cancelled; } @@ -163,6 +175,12 @@ private void OnEndCollide(EntityUid uid, StepTriggerComponent component, ref End component.CurrentlySteppedOn.Remove(otherUid); Dirty(uid, component); + if (component.StepOn) + { + var evStepOff = new StepTriggeredOffEvent(uid, otherUid); + RaiseLocalEvent(uid, ref evStepOff); + } + if (component.Colliding.Count == 0) { RemCompDeferred(uid); @@ -230,9 +248,14 @@ public struct StepTriggerAttemptEvent public bool Cancelled; } +/// +/// Raised when an entity stands on a steptrigger initially (assuming it has both on and off states). +/// [ByRefEvent] -public struct StepTriggeredEvent -{ - public EntityUid Source; - public EntityUid Tripper; -} +public readonly record struct StepTriggeredOnEvent(EntityUid Source, EntityUid Tripper); + +/// +/// Raised when an entity leaves a steptrigger if it has on and off states OR when an entity intersects a steptrigger. +/// +[ByRefEvent] +public readonly record struct StepTriggeredOffEvent(EntityUid Source, EntityUid Tripper); diff --git a/LEGAL.md b/LEGAL.md index 2df3c39add1..34cd4009d53 100644 --- a/LEGAL.md +++ b/LEGAL.md @@ -6,9 +6,9 @@ The Authors retain all copyright to their respective work submitted here. ## Code license -Content contributed to this repository after commit 87c70a89a67d0521a56388e6b1c3f2cb947943e4 is licensed under the GNU Affero General Public License version 3.0 unless otherwise stated. See [LICENSE-AGPLv3](https://github.com/Simple-Station/Einstein-Engines/blob/master/LICENSE-AGPLv3.txt). +Content contributed to this repository after commit 87c70a89a67d0521a56388e6b1c3f2cb947943e4 is licensed under the GNU Affero General Public License version 3.0 unless otherwise stated. See [LICENSE-AGPLv3](./LICENSE-AGPLv3.txt). -Content contributed to this repository before commit 87c70a89a67d0521a56388e6b1c3f2cb947943e4 is licensed under the MIT license unless otherwise stated. See [LICENSE-MIT](https://github.com/Simple-Station/Einstein-Engines/blob/master/LICENSE-MIT.txt). +Content contributed to this repository before commit 87c70a89a67d0521a56388e6b1c3f2cb947943e4 is licensed under the MIT license unless otherwise stated. See [LICENSE-MIT](./LICENSE-MIT.txt). [87c70a89a67d0521a56388e6b1c3f2cb947943e4](https://github.com/Simple-Station/Einstein-Engines/commit/87c70a89a67d0521a56388e6b1c3f2cb947943e4) was pushed on February 17th 2024 at 21:48 UTC diff --git a/README.md b/README.md index 3dbe1910e29..f102318611f 100644 --- a/README.md +++ b/README.md @@ -41,27 +41,24 @@ We provide some scripts shown below to make the job easier. ### Build dependencies > - Git -> - DOTNET SDK 7.0 or higher -> - python 3.7 or higher +> - .NET SDK 8.0.100 ### Windows > 1. Clone this repository -> 2. Run `RUN_THIS.py` to init submodules and download the engine, or run `git submodule update --init --recursive` in a terminal -> 3. Run the `Scripts/bat/run1buildDebug.bat` -> 4. Run the `Scripts/bat/run2configDev.bat` if you need other configurations run other config scripts -> 5. Run both the `Scripts/bat/run3server.bat` and `Scripts/bat/run4client.bat` -> 6. Connect to localhost and play +> 2. Run `git submodule update --init --recursive` in a terminal to download the engine +> 3. Run `Scripts/bat/buildAllDebug.bat` after making any changes to the source +> 4. Run `Scripts/bat/runQuickAll.bat` to launch the client and the server +> 5. Connect to localhost in the client and play ### Linux > 1. Clone this repository -> 2. Run `RUN_THIS.py` to init submodules and download the engine, or run `git submodule update --init --recursive` in a terminal -> 3. Run the `Scripts/sh/run1buildDebug.sh` -> 4. Run the `Scripts/sh/run2configDev.sh` if you need other configurations run other config scripts -> 5. Run both the `Scripts/sh/run3server.bat` and `scripts/sh/run4client.sh` -> 6. Connect to localhost and play +> 2. Run `git submodule update --init --recursive` in a terminal to download the engine +> 3. Run `Scripts/bat/buildAllDebug.sh` after making any changes to the source +> 4. Run `Scripts/bat/runQuickAll.sh` to launch the client and the server +> 5. Connect to localhost in the client and play ### MacOS @@ -70,12 +67,12 @@ We provide some scripts shown below to make the job easier. ## License Content contributed to this repository after commit 87c70a89a67d0521a56388e6b1c3f2cb947943e4 (`17 February 2024 23:00:00 UTC`) is licensed under the GNU Affero General Public License version 3.0 unless otherwise stated. -See [LICENSE-AGPLv3](https://github.com/Simple-Station/Einstein-Engines/blob/master/LICENSE-AGPLv3.txt). +See [LICENSE-AGPLv3](./LICENSE-AGPLv3.txt). Content contributed to this repository before commit 87c70a89a67d0521a56388e6b1c3f2cb947943e4 (`17 February 2024 23:00:00 UTC`) is licensed under the MIT license unless otherwise stated. -See [LICENSE-MIT](https://github.com/Simple-Station/Einstein-Engines/blob/master/LICENSE-MIT.txt). +See [LICENSE-MIT](./LICENSE-MIT.txt). Most assets are licensed under [CC-BY-SA 3.0](https://creativecommons.org/licenses/by-sa/3.0/) unless stated otherwise. Assets have their license and the copyright in the metadata file. -[Example](https://github.com/Simple-Station/Einstein-Engines/blob/master/Resources/Textures/Objects/Tools/crowbar.rsi/meta.json). +[Example](./Resources/Textures/Objects/Tools/crowbar.rsi/meta.json). Note that some assets are licensed under the non-commercial [CC-BY-NC-SA 3.0](https://creativecommons.org/licenses/by-nc-sa/3.0/) or similar non-commercial licenses and will need to be removed if you wish to use this project commercially. diff --git a/RUN_THIS.py b/RUN_THIS.py deleted file mode 100755 index 6ea9f8e707d..00000000000 --- a/RUN_THIS.py +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env python3 - -# Import future so people on py2 still get the clear error that they need to upgrade. -from __future__ import print_function -import sys -import subprocess - -version = sys.version_info -if version.major < 3 or (version.major == 3 and version.minor < 5): - print("ERROR: You need at least Python 3.5 to build SS14.") - sys.exit(1) - -subprocess.run([sys.executable, "git_helper.py"], cwd="BuildChecker") diff --git a/Resources/Audio/Effects/attributions.yml b/Resources/Audio/Effects/attributions.yml index 90445a31d1c..6f18510d17b 100644 --- a/Resources/Audio/Effects/attributions.yml +++ b/Resources/Audio/Effects/attributions.yml @@ -226,3 +226,8 @@ copyright: TGStation at 3df5d3b42bfb6b3b5adba1067ab41f83816255bb license: CC-BY-SA-3.0 source: https://github.com/tgstation/tgstation/blob/3df5d3b42bfb6b3b5adba1067ab41f83816255bb/sound/misc/server-ready.ogg + +- files: [beep_landmine.ogg] + copyright: '"beep_landmine.ogg" by kaktuscsc of Discord for SS14' + license: "CC-BY-SA-3.0" + source: https://github.com/YuriyKiss/space-station-14/commit/971a135a9c83aed46e967aac9302ab5b35562b5f diff --git a/Resources/Audio/Effects/beep_landmine.ogg b/Resources/Audio/Effects/beep_landmine.ogg new file mode 100644 index 0000000000000000000000000000000000000000..48bc5e21d962084a1db41c473f30892d914894ae GIT binary patch literal 6034 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 Bu4e!M literal 0 HcmV?d00001 diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 743c0add322..7fcb7aac227 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -4051,7 +4051,7 @@ Entries: - type: Add message: >- Glass/Crystal shards and floor tiles now deal damage and embed in - victims when colliding with them. + victims when colliding with them. id: 6107 time: '2024-05-11T01:23:00.0000000+00:00' - author: FoxxoTrystan @@ -4142,3 +4142,45 @@ Entries: message: Floors Looks Updated/Resprited. id: 6118 time: '2024-06-03T19:23:51.0000000+00:00' +- author: FoxxoTrystan + changes: + - type: Add + message: All species can now bring their own cultures and languages + id: 6119 + time: '2024-06-10T20:48:48.0000000+00:00' +- author: FoxxoTrystan + changes: + - type: Tweak + message: Rust Walls Sprites. + - type: Tweak + message: Armor, Bulletproof, Riot Suit Resprites. + - type: Tweak + message: New Banners Sprites. + - type: Tweak + message: Stunbaton, Fire Extinguisher New Sprites. + - type: Tweak + message: Rack/WallScreen resprites. + - type: Tweak + message: Stock Parts new sprites! + - type: Tweak + message: Radiation Collector has now a new sprite! + id: 6120 + time: '2024-06-11T00:34:02.0000000+00:00' +- author: DEATHB4DEFEAT + changes: + - type: Tweak + message: >- + UI layout now defaults to separated, the old one is still available in + settings + id: 6121 + time: '2024-06-16T22:38:10.0000000+00:00' +- author: DEATHB4DEFEAT + changes: + - type: Tweak + message: Space has suddenly become less dense (objects don't slow down in space) + - type: Remove + message: Moths are unable to move in space + - type: Tweak + message: Moths have way better control in zero gravity environments + id: 6122 + time: '2024-06-17T07:58:34.0000000+00:00' diff --git a/Resources/Credits/GitHub.txt b/Resources/Credits/GitHub.txt index 8c54ecb084d..03d5059e95b 100644 --- a/Resources/Credits/GitHub.txt +++ b/Resources/Credits/GitHub.txt @@ -1 +1 @@ -0x6273, 2013HORSEMEATSCANDAL, 20kdc, 21Melkuu, 4dplanner, 612git, 778b, Ablankmann, Acruid, actioninja, adamsong, Admiral-Obvious-001, Adrian16199, Aerocrux, Aexxie, africalimedrop, Agoichi, Ahion, AJCM-git, AjexRose, Alekshhh, AlexMorgan3817, AlmondFlour, AlphaQwerty, Altoids1, amylizzle, ancientpower, ArchPigeon, Arendian, arimah, Arteben, AruMoon, as334, AsikKEsel, asperger-sind, aspiringLich, avghdev, AzzyIsNotHere, BananaFlambe, BasedUser, BGare, BingoJohnson-zz, BismarckShuffle, Bixkitts, Blackern5000, Blazeror, Boaz1111, BobdaBiscuit, brainfood1183, Brandon-Huu, Bribrooo, Bright0, brndd, BubblegumBlue, BYONDFuckery, c4llv07e, CakeQ, CaptainSqrBeard, Carbonhell, Carolyn3114, casperr04, CatTheSystem, Centronias, chairbender, Charlese2, Cheackraze, cheesePizza2, Chief-Engineer, chromiumboy, Chronophylos, clement-or, Clyybber, ColdAutumnRain, Colin-Tel, collinlunn, ComicIronic, coolmankid12345, corentt, crazybrain23, creadth, CrigCrag, Crotalus, CrudeWax, CrzyPotato, Cyberboss, d34d10cc, Daemon, daerSeebaer, dahnte, dakamakat, dakimasu, DamianX, DangerRevolution, daniel-cr, Darkenson, DawBla, dch-GH, Deahaka, DEATHB4DEFEAT, DeathCamel58, deathride58, DebugOk, Decappi, deepdarkdepths, Delete69, deltanedas, DeltaV-Bot, DerbyX, DoctorBeard, DogZeroX, dontbetank, Doru991, DoubleRiceEddiedd, DrMelon, DrSmugleaf, drteaspoon420, DTanxxx, DubiousDoggo, Duddino, Dutch-VanDerLinde, Easypoller, eclips_e, EdenTheLiznerd, EEASAS, Efruit, ElectroSR, elthundercloud, Emisse, EmoGarbage404, Endecc, enumerate0, eoineoineoin, ERORR404V1, Errant-4, estacaoespacialpirata, exincore, exp111, Fahasor, FairlySadPanda, ficcialfaint, Fildrance, FillerVK, Fishfish458, Flareguy, FluffiestFloof, FluidRock, FoLoKe, fooberticus, Fortune117, FoxxoTrystan, freeman2651, Fromoriss, FungiFellow, GalacticChimp, gbasood, Geekyhobo, Genkail, Git-Nivrak, github-actions[bot], gituhabu, GNF54, Golinth, GoodWheatley, Gotimanga, graevy, GreyMario, Guess-My-Name, gusxyz, h3half, Hanzdegloker, Hardly3D, harikattar, Hebiman, Henry12116, HerCoyote23, Hmeister-real, HoofedEar, hord-brayden, hubismal, Hugal31, Hyenh, iacore, IamVelcroboy, icekot8, igorsaux, ike709, Illiux, Ilya246, IlyaElDunaev, Injazz, Insineer, IntegerTempest, Interrobang01, IProduceWidgets, ItsMeThom, j-giebel, Jackal298, Jackrost, jamessimo, janekvap, JerryImMouse, Jessetriesagain, jessicamaybe, Jezithyr, jicksaw, JiimBob, JoeHammad1844, joelhed, JohnGinnane, johnku1, joshepvodka, jproads, Jrpl, juliangiebel, JustArt1m, JustCone14, JustinTether, JustinTrotter, KaiShibaa, kalane15, kalanosh, KEEYNy, Keikiru, Kelrak, kerisargit, keronshb, KIBORG04, Killerqu00, KingFroozy, kira-er, Kit0vras, KittenColony, Kmc2000, Ko4ergaPunk, komunre, koteq, Krunklehorn, Kukutis96513, kxvvv, Lamrr, LankLTE, lapatison, Leander-0, leonardo-dabepis, LetterN, Level10Cybermancer, lever1209, LightVillet, liltenhead, LittleBuilderJane, Lomcastar, LordCarve, LordEclipse, LovelyLophi, LudwigVonChesterfield, Lukasz825700516, lunarcomets, luringens, lvvova1, lzimann, lzk228, M3739, MACMAN2003, Macoron, MagnusCrowe, ManelNavola, matthst, Matz05, MehimoNemo, MeltedPixel, MemeProof, Menshin, Mervill, metalgearsloth, mhamsterr, MilenVolf, Minty642, Mirino97, mirrorcult, misandrie, MishaUnity, MisterMecky, Mith-randalf, Moneyl, Moomoobeef, moony, Morb0, Mr0maks, musicmanvr, Myakot, Myctai, N3X15, Nairodian, Naive817, namespace-Memory, NickPowers43, nikthechampiongr, Nimfar11, Nirnael, nmajask, nok-ko, Nopey, notafet, notquitehadouken, noudoit, noverd, nuke-haus, NULL882, OCOtheOmega, OctoRocket, OldDanceJacket, onoira, Owai-Seek, pali6, Pangogie, patrikturi, PaulRitter, Peptide90, peptron1, Phantom-Lily, PHCodes, PixelTheKermit, PJB3005, Plykiya, pofitlo, pointer-to-null, PolterTzi, PoorMansDreams, potato1234x, ProfanedBane, PrPleGoo, ps3moira, Psychpsyo, psykzz, PuroSlavKing, quatre, QuietlyWhisper, qwerltaz, Radosvik, Radrark, Rainbeon, Rainfey, Rane, ravage123321, rbertoche, Redict, RedlineTriad, RednoWCirabrab, RemberBM, RemieRichards, RemTim, rene-descartes2021, RiceMar1244, RieBi, Rinkashikachi, Rockdtben, rolfero, rosieposieeee, Saakra, Samsterious, SaphireLattice, ScalyChimp, scrato, Scribbles0, Serkket, SethLafuente, ShadowCommander, Shadowtheprotogen546, SignalWalker, SimpleStation14, Simyon264, SirDragooon, Sirionaut, siyengar04, Skarletto, Skrauz, Skyedra, SlamBamActionman, Slava0135, Snowni, snowsignal, SonicHDC, SoulSloth, SpaceManiac, SpeltIncorrectyl, spoogemonster, ssdaniel24, Stealthbomber16, stellar-novas, StrawberryMoses, SweptWasTaken, Szunti, TadJohnson00, takemysoult, TaralGit, Tayrtahn, tday93, TekuNut, TemporalOroboros, tentekal, tgrkzus, thatrandomcanadianguy, TheArturZh, theashtronaut, thedraccx, themias, theomund, theOperand, TheShuEd, TimrodDX, Titian3, tkdrg, tmtmtl30, tom-leys, tomasalves8, Tomeno, tosatur, Tryded, TsjipTsjip, Tunguso4ka, TurboTrackerss14, Tyler-IN, Tyzemol, UbaserB, UKNOWH, UnicornOnLSD, Uriende, UristMcDorf, Vaaankas, Varen, VasilisThePikachu, veliebm, Veritius, Verslebas, VigersRay, Visne, VMSolidus, volundr-, Voomra, Vordenburg, vulppine, waylon531, weaversam8, Willhelm53, wixoaGit, WlarusFromDaSpace, wrexbe, xRiriq, yathxyz, Ygg01, YotaXP, YuriyKiss, zach-hill, Zandario, Zap527, ZelteHonor, zerorulez, zionnBE, zlodo, ZNixian, ZoldorfTheWizard, Zumorica, Zymem +0x6273, 2013HORSEMEATSCANDAL, 20kdc, 21Melkuu, 4dplanner, 612git, 778b, Ablankmann, Acruid, actioninja, adamsong, Admiral-Obvious-001, Adrian16199, Aerocrux, Aexxie, africalimedrop, Agoichi, Ahion, AJCM-git, AjexRose, Alekshhh, AlexMorgan3817, AlmondFlour, AlphaQwerty, Altoids1, amylizzle, ancientpower, ArchPigeon, Arendian, arimah, Arteben, AruMoon, as334, AsikKEsel, asperger-sind, aspiringLich, avghdev, AzzyIsNotHere, BananaFlambe, BasedUser, BGare, BingoJohnson-zz, BismarckShuffle, Bixkitts, Blackern5000, Blazeror, Boaz1111, BobdaBiscuit, brainfood1183, Brandon-Huu, Bribrooo, Bright0, brndd, BubblegumBlue, BYONDFuckery, c4llv07e, CakeQ, CaptainSqrBeard, Carbonhell, Carolyn3114, casperr04, CatTheSystem, Centronias, chairbender, Charlese2, Cheackraze, cheesePizza2, Chief-Engineer, chromiumboy, Chronophylos, clement-or, Clyybber, ColdAutumnRain, Colin-Tel, collinlunn, ComicIronic, coolmankid12345, corentt, crazybrain23, creadth, CrigCrag, Crotalus, CrudeWax, CrzyPotato, Cyberboss, d34d10cc, Daemon, daerSeebaer, dahnte, dakamakat, dakimasu, DamianX, DangerRevolution, daniel-cr, Darkenson, DawBla, dch-GH, Deahaka, DEATHB4DEFEAT, DeathCamel58, deathride58, DebugOk, Decappi, deepdarkdepths, Delete69, deltanedas, DeltaV-Bot, DerbyX, DoctorBeard, DogZeroX, dontbetank, Doru991, DoubleRiceEddiedd, DrMelon, DrSmugleaf, drteaspoon420, DTanxxx, DubiousDoggo, Duddino, Dutch-VanDerLinde, Easypoller, eclips_e, EdenTheLiznerd, EEASAS, Efruit, ElectroSR, elthundercloud, Emisse, EmoGarbage404, Endecc, enumerate0, eoineoineoin, ERORR404V1, Errant-4, estacaoespacialpirata, exincore, exp111, Fahasor, FairlySadPanda, ficcialfaint, Fildrance, FillerVK, Fishfish458, Flareguy, FluffiestFloof, FluidRock, FoLoKe, fooberticus, Fortune117, FoxxoTrystan, freeman2651, Fromoriss, FungiFellow, GalacticChimp, gbasood, Geekyhobo, Genkail, Git-Nivrak, github-actions[bot], gituhabu, GNF54, Golinth, GoodWheatley, Gotimanga, graevy, GreyMario, Guess-My-Name, gusxyz, h3half, Hanzdegloker, Hardly3D, harikattar, Hebiman, Henry12116, HerCoyote23, Hmeister-real, HoofedEar, hord-brayden, hubismal, Hugal31, Hyenh, iacore, IamVelcroboy, icekot8, igorsaux, ike709, Illiux, Ilya246, IlyaElDunaev, Injazz, Insineer, IntegerTempest, Interrobang01, IProduceWidgets, ItsMeThom, j-giebel, Jackal298, Jackrost, jamessimo, janekvap, JerryImMouse, Jessetriesagain, jessicamaybe, Jezithyr, jicksaw, JiimBob, JoeHammad1844, joelhed, JohnGinnane, johnku1, joshepvodka, jproads, Jrpl, juliangiebel, JustArt1m, JustCone14, JustinTether, JustinTrotter, KaiShibaa, kalane15, kalanosh, KEEYNy, Keikiru, Kelrak, kerisargit, keronshb, KIBORG04, Killerqu00, KingFroozy, kira-er, Kit0vras, KittenColony, Kmc2000, Ko4ergaPunk, komunre, koteq, Krunklehorn, Kukutis96513, kxvvv, Lamrr, LankLTE, lapatison, Leander-0, leonardo-dabepis, LetterN, Level10Cybermancer, lever1209, LightVillet, liltenhead, LittleBuilderJane, Lomcastar, LordCarve, LordEclipse, LovelyLophi, LudwigVonChesterfield, Lukasz825700516, lunarcomets, luringens, lvvova1, lzimann, lzk228, M3739, MACMAN2003, Macoron, MagnusCrowe, ManelNavola, matthst, Matz05, MehimoNemo, MeltedPixel, MemeProof, Menshin, Mervill, metalgearsloth, mhamsterr, MilenVolf, Minty642, Mirino97, mirrorcult, misandrie, MishaUnity, MisterMecky, Mith-randalf, Moneyl, Moomoobeef, moony, Morb0, Mr0maks, musicmanvr, Myakot, Myctai, N3X15, Nairodian, Naive817, namespace-Memory, NickPowers43, nikthechampiongr, Nimfar11, Nirnael, nmajask, nok-ko, Nopey, notafet, notquitehadouken, noudoit, noverd, nuke-haus, NULL882, OCOtheOmega, OctoRocket, OldDanceJacket, onoira, Owai-Seek, pali6, Pangogie, patrikturi, PaulRitter, Peptide90, peptron1, Phantom-Lily, PHCodes, PixelTheKermit, PJB3005, Plykiya, pofitlo, pointer-to-null, PolterTzi, PoorMansDreams, potato1234x, ProfanedBane, PrPleGoo, ps3moira, Psychpsyo, psykzz, PuroSlavKing, quatre, QuietlyWhisper, qwerltaz, Radosvik, Radrark, Rainbeon, Rainfey, Rane, ravage123321, rbertoche, Redict, RedlineTriad, RednoWCirabrab, RemberBM, RemieRichards, RemTim, rene-descartes2021, RiceMar1244, RieBi, Rinkashikachi, Rockdtben, rolfero, rosieposieeee, Saakra, Samsterious, SaphireLattice, ScalyChimp, scrato, Scribbles0, Serkket, SethLafuente, ShadowCommander, Shadowtheprotogen546, SignalWalker, SimpleStation14, Simyon264, SirDragooon, Sirionaut, siyengar04, Skarletto, Skrauz, Skyedra, SlamBamActionman, Slava0135, Snowni, snowsignal, SonicHDC, SoulSloth, SpaceManiac, SpeltIncorrectyl, spoogemonster, ssdaniel24, Stealthbomber16, stellar-novas, StrawberryMoses, SweptWasTaken, Szunti, TadJohnson00, takemysoult, TaralGit, Tayrtahn, tday93, TekuNut, TemporalOroboros, tentekal, tgrkzus, thatrandomcanadianguy, TheArturZh, theashtronaut, thedraccx, themias, theomund, theOperand, TheShuEd, TimrodDX, Titian3, tkdrg, tmtmtl30, tom-leys, tomasalves8, Tomeno, Tornado-Technology, tosatur, Tryded, TsjipTsjip, Tunguso4ka, TurboTrackerss14, Tyler-IN, Tyzemol, UbaserB, UKNOWH, UnicornOnLSD, Uriende, UristMcDorf, Vaaankas, Varen, VasilisThePikachu, veliebm, Veritius, Verslebas, VigersRay, Visne, VMSolidus, volundr-, Voomra, Vordenburg, vulppine, waylon531, weaversam8, Willhelm53, wixoaGit, WlarusFromDaSpace, wrexbe, xRiriq, yathxyz, Ygg01, YotaXP, YuriyKiss, zach-hill, Zandario, Zap527, ZelteHonor, zerorulez, zionnBE, zlodo, ZNixian, ZoldorfTheWizard, Zumorica, Zymem diff --git a/Resources/Maps/Shuttles/trading_outpost.yml b/Resources/Maps/Shuttles/trading_outpost.yml index a10f070bd25..f040d58253d 100644 --- a/Resources/Maps/Shuttles/trading_outpost.yml +++ b/Resources/Maps/Shuttles/trading_outpost.yml @@ -3,20 +3,20 @@ meta: postmapinit: false tilemap: 0: Space - 29: FloorDark - 34: FloorDarkMono - 37: FloorDarkPavementVertical - 49: FloorGrassJungle - 64: FloorMetalDiamond - 77: FloorReinforced - 89: FloorSteel - 100: FloorSteelMono - 104: FloorTechMaint - 105: FloorTechMaint2 - 118: FloorWood - 119: FloorWoodTile - 120: Lattice - 121: Plating + 31: FloorDark + 36: FloorDarkMono + 39: FloorDarkPavementVertical + 51: FloorGrassJungle + 66: FloorMetalDiamond + 79: FloorReinforced + 93: FloorSteel + 104: FloorSteelMono + 108: FloorTechMaint + 109: FloorTechMaint2 + 122: FloorWood + 124: FloorWoodTile + 125: Lattice + 126: Plating entities: - proto: "" entities: @@ -31,27 +31,27 @@ entities: chunks: 0,0: ind: 0,0 - tiles: WQAAAAABWQAAAAABTQAAAAAATQAAAAAATQAAAAAAeQAAAAAATQAAAAAATQAAAAAATQAAAAAAWQAAAAABWQAAAAADeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAWQAAAAADWQAAAAADWQAAAAACWQAAAAADWQAAAAAAWQAAAAAAWQAAAAADWQAAAAAAWQAAAAABWQAAAAADWQAAAAAAIgAAAAABJQAAAAADeQAAAAAAAAAAAAAAAAAAAAAAIgAAAAAAIgAAAAAAIgAAAAABIgAAAAAAIgAAAAAAIgAAAAACIgAAAAABIgAAAAAAIgAAAAAAIgAAAAABIgAAAAACeQAAAAAATQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAATQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAdgAAAAAAdwAAAAABdwAAAAADdwAAAAACMQAAAAAAMQAAAAAAMQAAAAAAdwAAAAADdwAAAAABdwAAAAABdgAAAAACeQAAAAAATQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAdgAAAAADdwAAAAABdwAAAAADdwAAAAADdgAAAAADdgAAAAACdgAAAAADdwAAAAAAdwAAAAABdwAAAAAAdgAAAAACIgAAAAADJQAAAAACeQAAAAAAAAAAAAAAAAAAAAAAdgAAAAAAdgAAAAABdgAAAAACdgAAAAABdgAAAAAAdgAAAAACdgAAAAAAdgAAAAAAdgAAAAABdgAAAAADdgAAAAACeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + tiles: XQAAAAABXQAAAAABTwAAAAAATwAAAAAATwAAAAAAfgAAAAAATwAAAAAATwAAAAAATwAAAAAAXQAAAAABXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAXQAAAAADXQAAAAADXQAAAAACXQAAAAADXQAAAAAAXQAAAAAAXQAAAAADXQAAAAAAXQAAAAABXQAAAAADXQAAAAAAJAAAAAABJwAAAAADfgAAAAAAAAAAAAAAAAAAAAAAJAAAAAAAJAAAAAAAJAAAAAABJAAAAAAAJAAAAAAAJAAAAAACJAAAAAABJAAAAAAAJAAAAAAAJAAAAAABJAAAAAACfgAAAAAATwAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAATwAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAegAAAAAAfAAAAAABfAAAAAADfAAAAAACMwAAAAAAMwAAAAAAMwAAAAAAfAAAAAADfAAAAAABfAAAAAABegAAAAACfgAAAAAATwAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAegAAAAADfAAAAAABfAAAAAADfAAAAAADegAAAAADegAAAAACegAAAAADfAAAAAAAfAAAAAABfAAAAAAAegAAAAACJAAAAAADJwAAAAACfgAAAAAAAAAAAAAAAAAAAAAAegAAAAAAegAAAAABegAAAAACegAAAAABegAAAAAAegAAAAACegAAAAAAegAAAAAAegAAAAABegAAAAADegAAAAACfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA version: 6 0,-1: ind: 0,-1 - tiles: eQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAIgAAAAAAeQAAAAAAeQAAAAAAIgAAAAABIgAAAAABHQAAAAACeQAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAIgAAAAABIgAAAAACIgAAAAAAIgAAAAAAIgAAAAABIgAAAAABIgAAAAACIgAAAAAAIgAAAAACeQAAAAAAeQAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAWQAAAAADWQAAAAADWQAAAAAAWQAAAAACWQAAAAADWQAAAAACWQAAAAADWQAAAAAAWQAAAAACWQAAAAABWQAAAAABeQAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAWQAAAAACWQAAAAAATQAAAAAATQAAAAAATQAAAAAAeQAAAAAATQAAAAAATQAAAAAATQAAAAAAWQAAAAAAWQAAAAABeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZAAAAAADWQAAAAAATQAAAAAATQAAAAAATQAAAAAAeQAAAAAATQAAAAAATQAAAAAATQAAAAAAWQAAAAACZAAAAAAAeQAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAWQAAAAADWQAAAAABTQAAAAAATQAAAAAATQAAAAAAeQAAAAAATQAAAAAATQAAAAAATQAAAAAAWQAAAAAAWQAAAAADeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAWQAAAAACWQAAAAABTQAAAAAATQAAAAAATQAAAAAAeQAAAAAATQAAAAAATQAAAAAATQAAAAAAWQAAAAADWQAAAAADeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAZAAAAAAAWQAAAAABaQAAAAAAaQAAAAAAaAAAAAAAeQAAAAAAaAAAAAAAaQAAAAAAaQAAAAAAWQAAAAAAZAAAAAACeQAAAAAAIgAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAWQAAAAACWQAAAAAAaQAAAAAAaQAAAAAAaAAAAAAAeQAAAAAAaAAAAAAAaQAAAAAAaQAAAAAAWQAAAAADWQAAAAACeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAZAAAAAAAWQAAAAAAaQAAAAAAaQAAAAAAaAAAAAAAeQAAAAAAaAAAAAAAaQAAAAAAaQAAAAAAWQAAAAABZAAAAAACeQAAAAAAIgAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAWQAAAAAAWQAAAAADTQAAAAAATQAAAAAATQAAAAAAeQAAAAAATQAAAAAATQAAAAAATQAAAAAAWQAAAAADWQAAAAABeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAWQAAAAABWQAAAAACTQAAAAAATQAAAAAATQAAAAAAeQAAAAAATQAAAAAATQAAAAAATQAAAAAAWQAAAAABWQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAZAAAAAACWQAAAAAATQAAAAAATQAAAAAATQAAAAAAeQAAAAAATQAAAAAATQAAAAAATQAAAAAAWQAAAAADZAAAAAADeQAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAA + tiles: fgAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAJAAAAAAAfgAAAAAAfgAAAAAAJAAAAAABJAAAAAABHwAAAAACfgAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAJAAAAAABJAAAAAACJAAAAAAAJAAAAAAAJAAAAAABJAAAAAABJAAAAAACJAAAAAAAJAAAAAACfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAXQAAAAADXQAAAAADXQAAAAAAXQAAAAACXQAAAAADXQAAAAACXQAAAAADXQAAAAAAXQAAAAACXQAAAAABXQAAAAABfgAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAXQAAAAACXQAAAAAATwAAAAAATwAAAAAATwAAAAAAfgAAAAAATwAAAAAATwAAAAAATwAAAAAAXQAAAAAAXQAAAAABfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAAADXQAAAAAATwAAAAAATwAAAAAATwAAAAAAfgAAAAAATwAAAAAATwAAAAAATwAAAAAAXQAAAAACaAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAXQAAAAADXQAAAAABTwAAAAAATwAAAAAATwAAAAAAfgAAAAAATwAAAAAATwAAAAAATwAAAAAAXQAAAAAAXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAXQAAAAACXQAAAAABTwAAAAAATwAAAAAATwAAAAAAfgAAAAAATwAAAAAATwAAAAAATwAAAAAAXQAAAAADXQAAAAADfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAXQAAAAABbQAAAAAAbQAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbQAAAAAAbQAAAAAAXQAAAAAAaAAAAAACfgAAAAAAJAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAXQAAAAACXQAAAAAAbQAAAAAAbQAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbQAAAAAAbQAAAAAAXQAAAAADXQAAAAACfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAaAAAAAAAXQAAAAAAbQAAAAAAbQAAAAAAbAAAAAAAfgAAAAAAbAAAAAAAbQAAAAAAbQAAAAAAXQAAAAABaAAAAAACfgAAAAAAJAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAXQAAAAAAXQAAAAADTwAAAAAATwAAAAAATwAAAAAAfgAAAAAATwAAAAAATwAAAAAATwAAAAAAXQAAAAADXQAAAAABfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAXQAAAAABXQAAAAACTwAAAAAATwAAAAAATwAAAAAAfgAAAAAATwAAAAAATwAAAAAATwAAAAAAXQAAAAABXQAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAaAAAAAACXQAAAAAATwAAAAAATwAAAAAATwAAAAAAfgAAAAAATwAAAAAATwAAAAAATwAAAAAAXQAAAAADaAAAAAADfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAA version: 6 -1,0: ind: -1,0 - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAJQAAAAACIgAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAATQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAATQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAATQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAJQAAAAADIgAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAJwAAAAACJAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAATwAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAATwAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAATwAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAJwAAAAADJAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA version: 6 -1,-1: ind: -1,-1 - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAIgAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAIgAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeQAAAAAA + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAJAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAJAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfgAAAAAA version: 6 0,-2: ind: 0,-2 - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAeQAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAeQAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeQAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAQAAAAAAAQAAAAAAAQAAAAAAAIgAAAAABIgAAAAACHQAAAAACHQAAAAADHQAAAAABHQAAAAABeQAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAaAAAAAAAaAAAAAAAaAAAAAAAHQAAAAABHQAAAAACHQAAAAABIgAAAAADIgAAAAADHQAAAAACeQAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAA + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfgAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAQgAAAAAAQgAAAAAAQgAAAAAAJAAAAAABJAAAAAACHwAAAAACHwAAAAADHwAAAAABHwAAAAABfgAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAbAAAAAAAbAAAAAAAbAAAAAAAHwAAAAABHwAAAAACHwAAAAABJAAAAAADJAAAAAADHwAAAAACfgAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAA version: 6 -1,-2: ind: -1,-2 - tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAeAAAAAAAeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAAAAAAAAAAAAeAAAAAAA + tiles: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAfQAAAAAAfgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfQAAAAAAAAAAAAAAfQAAAAAA version: 6 - type: Broadphase - type: Physics @@ -1889,276 +1889,303 @@ entities: rot: 1.5707963267948966 rad pos: 2.5,-17.5 parent: 2 -- proto: CargoPallet +- proto: CargoPalletBuy entities: - - uid: 20 - components: - - type: Transform - pos: 7.5,0.5 - parent: 2 - uid: 21 components: - type: Transform - pos: 8.5,0.5 + rot: -1.5707963267948966 rad + pos: 3.5,-9.5 parent: 2 - uid: 24 components: - type: Transform - pos: 8.5,-0.5 + rot: -1.5707963267948966 rad + pos: 2.5,-9.5 parent: 2 - uid: 25 components: - type: Transform - pos: 7.5,-0.5 + rot: -1.5707963267948966 rad + pos: 2.5,-8.5 parent: 2 - uid: 26 components: - type: Transform - pos: 7.5,-1.5 + rot: -1.5707963267948966 rad + pos: 3.5,-8.5 parent: 2 - uid: 27 components: - type: Transform - pos: 8.5,-1.5 + rot: -1.5707963267948966 rad + pos: 3.5,-7.5 parent: 2 - uid: 30 components: - type: Transform rot: -1.5707963267948966 rad - pos: 6.5,0.5 - parent: 2 - - uid: 32 - components: - - type: Transform pos: 2.5,-7.5 parent: 2 - - uid: 34 + - uid: 32 components: - type: Transform rot: -1.5707963267948966 rad - pos: 7.5,-7.5 + pos: 4.5,-9.5 parent: 2 - uid: 35 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 8.5,-7.5 + rot: 1.5707963267948966 rad + pos: 7.5,-0.5 parent: 2 - uid: 36 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 6.5,-1.5 + rot: 1.5707963267948966 rad + pos: 6.5,-0.5 parent: 2 - uid: 37 components: - type: Transform rot: -1.5707963267948966 rad - pos: 8.5,-9.5 + pos: 4.5,-7.5 parent: 2 - uid: 39 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 8.5,-8.5 + rot: 1.5707963267948966 rad + pos: 6.5,-2.5 parent: 2 - uid: 41 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 7.5,-8.5 + rot: 1.5707963267948966 rad + pos: 6.5,-1.5 parent: 2 - uid: 42 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 6.5,-8.5 + rot: 1.5707963267948966 rad + pos: 7.5,-1.5 parent: 2 - uid: 43 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 6.5,-9.5 + rot: 1.5707963267948966 rad + pos: 8.5,-2.5 parent: 2 - uid: 44 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 4.5,-0.5 + rot: 1.5707963267948966 rad + pos: 8.5,-1.5 parent: 2 - - uid: 45 + - uid: 47 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 4.5,-8.5 + rot: 1.5707963267948966 rad + pos: 8.5,0.5 parent: 2 - - uid: 46 + - uid: 49 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 6.5,-6.5 + rot: 1.5707963267948966 rad + pos: 8.5,-0.5 parent: 2 - - uid: 47 + - uid: 50 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 4.5,-9.5 + rot: 1.5707963267948966 rad + pos: 7.5,-2.5 parent: 2 - - uid: 48 + - uid: 56 components: - type: Transform rot: -1.5707963267948966 rad - pos: 6.5,-7.5 + pos: 4.5,-6.5 parent: 2 - - uid: 49 + - uid: 61 components: - type: Transform - pos: 7.5,-9.5 + rot: -1.5707963267948966 rad + pos: 4.5,-8.5 parent: 2 - - uid: 50 + - uid: 67 components: - type: Transform - pos: 3.5,-7.5 + rot: -1.5707963267948966 rad + pos: 3.5,-6.5 parent: 2 - - uid: 51 + - uid: 71 components: - type: Transform - pos: 3.5,-9.5 + rot: -1.5707963267948966 rad + pos: 2.5,-6.5 parent: 2 - - uid: 52 + - uid: 183 components: - type: Transform - pos: 3.5,-8.5 + rot: 1.5707963267948966 rad + pos: 6.5,0.5 parent: 2 - - uid: 54 + - uid: 900 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 4.5,-7.5 + rot: 1.5707963267948966 rad + pos: 7.5,0.5 parent: 2 - - uid: 55 +- proto: CargoPalletSell + entities: + - uid: 34 components: - type: Transform rot: -1.5707963267948966 rad - pos: 6.5,-2.5 + pos: 4.5,-0.5 parent: 2 - - uid: 56 + - uid: 45 components: - type: Transform - pos: 3.5,-1.5 + rot: 1.5707963267948966 rad + pos: 8.5,-7.5 parent: 2 - - uid: 57 + - uid: 46 components: - type: Transform - pos: 2.5,-8.5 + rot: -1.5707963267948966 rad + pos: 4.5,-2.5 parent: 2 - - uid: 58 + - uid: 48 components: - type: Transform - pos: 3.5,-0.5 + rot: -1.5707963267948966 rad + pos: 3.5,-2.5 parent: 2 - - uid: 59 + - uid: 51 components: - type: Transform - pos: 3.5,0.5 + rot: -1.5707963267948966 rad + pos: 3.5,-1.5 parent: 2 - - uid: 60 + - uid: 52 components: - type: Transform rot: -1.5707963267948966 rad - pos: 6.5,-0.5 + pos: 2.5,-2.5 parent: 2 - - uid: 61 + - uid: 54 components: - type: Transform - pos: 2.5,-9.5 + rot: 1.5707963267948966 rad + pos: 6.5,-9.5 parent: 2 - - uid: 66 + - uid: 55 components: - type: Transform rot: -1.5707963267948966 rad - pos: 7.5,-2.5 + pos: 2.5,-1.5 parent: 2 - - uid: 67 + - uid: 57 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 8.5,-9.5 + parent: 2 + - uid: 58 components: - type: Transform rot: -1.5707963267948966 rad - pos: 2.5,-2.5 + pos: 4.5,0.5 parent: 2 - - uid: 68 + - uid: 59 components: - type: Transform - pos: 2.5,-1.5 + rot: 1.5707963267948966 rad + pos: 8.5,-6.5 parent: 2 - - uid: 69 + - uid: 60 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 3.5,-2.5 + rot: 1.5707963267948966 rad + pos: 7.5,-7.5 parent: 2 - - uid: 70 + - uid: 66 components: - type: Transform rot: -1.5707963267948966 rad - pos: 8.5,-2.5 + pos: 3.5,0.5 parent: 2 - - uid: 71 + - uid: 68 components: - type: Transform - pos: 2.5,-0.5 + rot: 1.5707963267948966 rad + pos: 7.5,-8.5 parent: 2 - - uid: 72 + - uid: 69 components: - type: Transform - pos: 2.5,0.5 + rot: 1.5707963267948966 rad + pos: 8.5,-8.5 parent: 2 - - uid: 73 + - uid: 70 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 8.5,-6.5 + rot: 1.5707963267948966 rad + pos: 7.5,-9.5 parent: 2 - - uid: 183 + - uid: 72 components: - type: Transform - rot: -1.5707963267948966 rad + rot: 1.5707963267948966 rad pos: 7.5,-6.5 parent: 2 - - uid: 900 + - uid: 73 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 3.5,-6.5 + rot: 1.5707963267948966 rad + pos: 6.5,-6.5 parent: 2 - uid: 901 components: - type: Transform rot: -1.5707963267948966 rad - pos: 2.5,-6.5 + pos: 2.5,-0.5 parent: 2 - uid: 903 components: - type: Transform rot: -1.5707963267948966 rad - pos: 4.5,0.5 + pos: 3.5,-0.5 parent: 2 - uid: 907 components: - type: Transform - rot: -1.5707963267948966 rad - pos: 4.5,-6.5 + rot: 1.5707963267948966 rad + pos: 7.5,-7.5 parent: 2 - uid: 908 components: - type: Transform rot: -1.5707963267948966 rad - pos: 4.5,-2.5 + pos: 4.5,-1.5 parent: 2 - uid: 909 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 6.5,-8.5 + parent: 2 + - uid: 960 + components: + - type: Transform + rot: 1.5707963267948966 rad + pos: 6.5,-7.5 + parent: 2 + - uid: 961 components: - type: Transform rot: -1.5707963267948966 rad - pos: 4.5,-1.5 + pos: 2.5,0.5 parent: 2 - proto: CarpetBlack entities: diff --git a/Resources/Prototypes/Entities/Clothing/OuterClothing/wintercoats.yml b/Resources/Prototypes/Entities/Clothing/OuterClothing/wintercoats.yml index f3610178b9e..aa4a7b50e65 100644 --- a/Resources/Prototypes/Entities/Clothing/OuterClothing/wintercoats.yml +++ b/Resources/Prototypes/Entities/Clothing/OuterClothing/wintercoats.yml @@ -549,9 +549,9 @@ description: A cozy jacket with the Cybersun logo printed on the back. Merchandise rewarded to stations with a safety factor of uhh... seven. components: - type: Sprite - sprite: Clothing/OuterClothing/WinterCoats/cs_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_cybersun.rsi - type: Clothing - sprite: Clothing/OuterClothing/WinterCoats/cs_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_cybersun.rsi - type: entity parent: ClothingOuterWinterCoat @@ -560,9 +560,9 @@ description: A cozy jacket with the Einstein Engines logo printed on the back. Merchandise rewarded to stations with a safety factor of uhh... seven. components: - type: Sprite - sprite: Clothing/OuterClothing/WinterCoats/ee_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_einstein_engines.rsi - type: Clothing - sprite: Clothing/OuterClothing/WinterCoats/ee_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_einstein_engines.rsi - type: entity parent: ClothingOuterWinterCoat @@ -571,9 +571,9 @@ description: A cozy jacket with the Hephaestus Industries logo printed on the back. Merchandise rewarded to stations with a safety factor of uhh... seven. components: - type: Sprite - sprite: Clothing/OuterClothing/WinterCoats/hi_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_hephestus_industries.rsi - type: Clothing - sprite: Clothing/OuterClothing/WinterCoats/hi_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_hephestus_industries.rsi - type: entity parent: ClothingOuterWinterCoat @@ -582,9 +582,9 @@ description: A cozy jacket with the Hawkmoon Acquisitions logo printed on the back. Merchandise rewarded to stations with a safety factor of uhh... seven. components: - type: Sprite - sprite: Clothing/OuterClothing/WinterCoats/hm_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_hawkmoon_aquisitions.rsi - type: Clothing - sprite: Clothing/OuterClothing/WinterCoats/hm_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_hawkmoon_aquisitions.rsi - type: entity parent: ClothingOuterWinterCoat @@ -593,9 +593,9 @@ description: A cozy jacket with the Interdyne logo printed on the back. Merchandise rewarded to stations with a safety factor of uhh... seven. components: - type: Sprite - sprite: Clothing/OuterClothing/WinterCoats/id_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_interdyne.rsi - type: Clothing - sprite: Clothing/OuterClothing/WinterCoats/id_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_interdyne.rsi - type: entity parent: ClothingOuterWinterCoat @@ -604,9 +604,9 @@ description: A cozy jacket with the Bishop Cybernetics logo printed on the back. Merchandise rewarded to stations with a safety factor of uhh... seven. components: - type: Sprite - sprite: Clothing/OuterClothing/WinterCoats/bc_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_bishop_cybernetics.rsi - type: Clothing - sprite: Clothing/OuterClothing/WinterCoats/bc_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_bishop_cybernetics.rsi - type: entity parent: ClothingOuterWinterCoat @@ -615,9 +615,9 @@ description: A cozy jacket with the Discount Dan's logo printed on the back. Merchandise rewarded to stations with a safety factor of uhh... seven. components: - type: Sprite - sprite: Clothing/OuterClothing/WinterCoats/dd_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_discount_dans.rsi - type: Clothing - sprite: Clothing/OuterClothing/WinterCoats/dd_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_discount_dans.rsi - type: entity parent: ClothingOuterWinterCoat @@ -626,9 +626,9 @@ description: A cozy jacket with the Five Points Armory logo printed on the back. Merchandise rewarded to stations with a safety factor of uhh... seven. components: - type: Sprite - sprite: Clothing/OuterClothing/WinterCoats/fa_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_five_points_armory.rsi - type: Clothing - sprite: Clothing/OuterClothing/WinterCoats/fa_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_five_points_armory.rsi - type: entity parent: ClothingOuterWinterCoat @@ -637,9 +637,9 @@ description: A cozy jacket with the Gilthari Exports logo printed on the back. Merchandise rewarded to stations with a safety factor of uhh... seven. components: - type: Sprite - sprite: Clothing/OuterClothing/WinterCoats/ge_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_gilthari_exports.rsi - type: Clothing - sprite: Clothing/OuterClothing/WinterCoats/ge_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_gilthari_exports.rsi - type: entity parent: ClothingOuterWinterCoat @@ -648,6 +648,6 @@ description: A cozy jacket with the Zeng-Hu Pharmaceuticals logo printed on the back. Merchandise rewarded to stations with a safety factor of uhh... seven. components: - type: Sprite - sprite: Clothing/OuterClothing/WinterCoats/zh_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_zeng_hu_pharma.rsi - type: Clothing - sprite: Clothing/OuterClothing/WinterCoats/zh_corpo_jacket.rsi + sprite: Clothing/OuterClothing/WinterCoats/corpo_jacket_zeng_hu_pharma.rsi diff --git a/Resources/Prototypes/Entities/Mobs/Species/moth.yml b/Resources/Prototypes/Entities/Mobs/Species/moth.yml index 1680dd6cda6..df7fad06dd2 100644 --- a/Resources/Prototypes/Entities/Mobs/Species/moth.yml +++ b/Resources/Prototypes/Entities/Mobs/Species/moth.yml @@ -44,9 +44,7 @@ Female: UnisexMoth Unsexed: UnisexMoth - type: MovementSpeedModifier - weightlessAcceleration: 1.5 # Move around more easily in space. - weightlessFriction: 1 - weightlessModifier: 1 + weightlessAcceleration: 2.5 # Move around more easily in space. - type: Flammable damage: types: diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks-cartons.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks-cartons.yml index f232bf1d34d..67d79540382 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks-cartons.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks-cartons.yml @@ -17,7 +17,7 @@ - type: Sprite state: icon - type: Item - size: Normal + size: Small - type: MeleeWeapon soundNoDamage: path: "/Audio/Effects/Fluids/splat.ogg" @@ -39,6 +39,18 @@ - type: TrashOnSolutionEmpty solution: drink +- type: entity + parent: DrinkCartonBaseFull + id: DrinkCartonBaseLargeFull + abstract: true + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 100 + - type: Item + size: Normal + - type: entity id: DrinkCartonVisualsOpenable abstract: true @@ -116,7 +128,7 @@ sprite: Objects/Consumable/Drinks/cream.rsi - type: entity - parent: [DrinkCartonVisualsOpenable, DrinkCartonBaseFull] + parent: [DrinkCartonVisualsOpenable, DrinkCartonBaseLargeFull] id: DrinkMilkCarton name: milk description: An opaque white liquid produced by the mammary glands of mammals. @@ -124,7 +136,6 @@ - type: SolutionContainerManager solutions: drink: - maxVol: 100 reagents: - ReagentId: Milk Quantity: 100 @@ -132,7 +143,7 @@ sprite: Objects/Consumable/Drinks/milk.rsi - type: entity - parent: [DrinkCartonVisualsOpenable, DrinkCartonBaseFull] + parent: [DrinkCartonVisualsOpenable, DrinkCartonBaseLargeFull] id: DrinkSoyMilkCarton name: soy milk description: White and nutritious soy goodness! @@ -140,7 +151,6 @@ - type: SolutionContainerManager solutions: drink: - maxVol: 100 reagents: - ReagentId: MilkSoy Quantity: 100 @@ -148,7 +158,7 @@ sprite: Objects/Consumable/Drinks/soymilk.rsi - type: entity - parent: [DrinkCartonVisualsOpenable, DrinkCartonBaseFull] + parent: [DrinkCartonVisualsOpenable, DrinkCartonBaseLargeFull] id: DrinkOatMilkCarton name: oat milk description: It's oat milk. Tan and nutritious goodness! @@ -156,7 +166,6 @@ - type: SolutionContainerManager solutions: drink: - maxVol: 100 reagents: - ReagentId: MilkOat Quantity: 100 diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/trash_drinks.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/trash_drinks.yml index f6dd7222611..86bc34f3c8b 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/trash_drinks.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/trash_drinks.yml @@ -8,6 +8,8 @@ components: - type: Sprite state: icon + - type: Item + size: Normal - type: SolutionContainerManager solutions: drink: @@ -72,6 +74,19 @@ Glass: 100 - type: SpaceGarbage +- type: entity + name: base empty bottle + id: DrinkBottleBaseSmallEmpty + parent: DrinkBottleBaseEmpty + abstract: true + components: + - type: Item + size: Small + - type: SolutionContainerManager + solutions: + drink: + maxVol: 50 + - type: entity name: base empty carton id: DrinkCartonBaseEmpty @@ -122,6 +137,19 @@ Cardboard: 20 - type: SpaceGarbage +- type: entity + name: base empty bottle + id: DrinkCartonBaseLargeEmpty + parent: DrinkCartonBaseEmpty + abstract: true + components: + - type: Item + size: Normal + - type: SolutionContainerManager + solutions: + drink: + maxVol: 100 + # Containers - type: entity name: Jailbreaker Verte bottle @@ -143,28 +171,20 @@ - type: entity name: ale bottle - parent: DrinkBottleBaseEmpty + parent: DrinkBottleBaseSmallEmpty id: DrinkBottleAle components: - type: Sprite sprite: Objects/Consumable/TrashDrinks/alebottle_empty.rsi - - type: SolutionContainerManager - solutions: - drink: - maxVol: 50 - type: entity name: beer bottle - parent: DrinkBottleBaseEmpty + parent: DrinkBottleBaseSmallEmpty id: DrinkBottleBeer components: - type: Sprite sprite: Objects/Consumable/TrashDrinks/beer_empty.rsi - - type: SolutionContainerManager - solutions: - drink: - maxVol: 50 - type: entity @@ -322,37 +342,24 @@ - type: entity name: milk carton - parent: DrinkCartonBaseEmpty + parent: DrinkCartonBaseLargeEmpty id: DrinkCartonMilk components: - type: Sprite sprite: Objects/Consumable/Drinks/milk.rsi - - type: SolutionContainerManager - solutions: - drink: - maxVol: 100 - - type: entity name: soy milk carton - parent: DrinkCartonBaseEmpty + parent: DrinkCartonBaseLargeEmpty id: DrinkCartonSoyMilk components: - type: Sprite sprite: Objects/Consumable/Drinks/soymilk.rsi - - type: SolutionContainerManager - solutions: - drink: - maxVol: 100 - type: entity name: oat milk carton - parent: DrinkCartonBaseEmpty + parent: DrinkCartonBaseLargeEmpty id: DrinkCartonOatMilk components: - type: Sprite sprite: Objects/Consumable/Drinks/oatmilk.rsi - - type: SolutionContainerManager - solutions: - drink: - maxVol: 100 diff --git a/Resources/Prototypes/Entities/Objects/Misc/land_mine.yml b/Resources/Prototypes/Entities/Objects/Misc/land_mine.yml index 9088edc8159..a3e3485bc65 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/land_mine.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/land_mine.yml @@ -35,9 +35,13 @@ - !type:DoActsBehavior acts: [ "Destruction" ] - type: LandMine - - type: TriggerOnStepTrigger + sound: + path: /Audio/Effects/beep_landmine.ogg + params: + maxDistance: 10 - type: StepTrigger requiredTriggeredSpeed: 0 + stepOn: true - type: entity name: kick mine @@ -57,7 +61,6 @@ - type: Construction graph: ModularMineGraph node: emptyCase - - type: LandMine - type: entity name: explosive mine @@ -71,4 +74,3 @@ intensitySlope: 3 totalIntensity: 120 # about a ~4 tile radius canCreateVacuum: false - - type: DeleteOnTrigger diff --git a/Resources/Prototypes/Entities/Objects/Specific/Cargo/cargo_pallet.yml b/Resources/Prototypes/Entities/Objects/Specific/Cargo/cargo_pallet.yml index 925e036e09e..c628d199a90 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Cargo/cargo_pallet.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Cargo/cargo_pallet.yml @@ -21,6 +21,7 @@ mask: - MachineMask - type: CargoPallet + palletType: All - type: StaticPrice price: 100 - type: Sprite @@ -53,3 +54,33 @@ - type: GuideHelp guides: - Cargo + +- type: entity + id: CargoPalletSell + name: cargo selling pallet + description: Designates valid items to sell with a selling computer, or to CentCom when a shuttle is recalled. + parent: CargoPallet + components: + - type: CargoPallet + palletType: sell + - type: Sprite + drawdepth: FloorTiles + layers: + - sprite: Structures/cargo_pallets.rsi + state: cargo_pallet_sell + + +- type: entity + id: CargoPalletBuy + name: cargo buying pallet + description: Designates where orders will appear when purchased. + parent: CargoPallet + components: + - type: CargoPallet + palletType: buy + - type: Sprite + drawdepth: FloorTiles + layers: + - sprite: Structures/cargo_pallets.rsi + state: cargo_pallet_buy + diff --git a/Resources/Prototypes/Entities/Objects/Specific/Janitorial/janitor.yml b/Resources/Prototypes/Entities/Objects/Specific/Janitorial/janitor.yml index 8d3c83e3e1e..2ddb21b9e6c 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Janitorial/janitor.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Janitorial/janitor.yml @@ -230,6 +230,7 @@ - type: StepTrigger intersectRatio: 0.2 requiredTriggeredSpeed: 0 + stepOn: true - type: CollisionWake enabled: false - type: Physics @@ -251,6 +252,10 @@ mask: - ItemMask - type: LandMine + sound: + path: /Audio/Effects/beep_landmine.ogg + params: + maxDistance: 10 - type: ExplodeOnTrigger - type: Explosive explosionType: HardBomb # normally Default and max 5 total 60 diff --git a/Resources/Prototypes/Entities/Structures/Decoration/curtains.yml b/Resources/Prototypes/Entities/Structures/Decoration/curtains.yml index 85c9bdae3df..77b03d36f5d 100644 --- a/Resources/Prototypes/Entities/Structures/Decoration/curtains.yml +++ b/Resources/Prototypes/Entities/Structures/Decoration/curtains.yml @@ -50,6 +50,8 @@ MaterialCloth1: min: 1 max: 2 + - type: WallMount + arc: 360 - type: entity id: HospitalCurtains @@ -350,4 +352,4 @@ graph: Curtains node: CurtainsWhiteOpen - type: Physics - canCollide: false \ No newline at end of file + canCollide: false diff --git a/Resources/Prototypes/Recipes/Construction/furniture.yml b/Resources/Prototypes/Recipes/Construction/furniture.yml index 1a17b2f856d..25978771872 100644 --- a/Resources/Prototypes/Recipes/Construction/furniture.yml +++ b/Resources/Prototypes/Recipes/Construction/furniture.yml @@ -731,9 +731,7 @@ state: closed objectType: Structure placementMode: SnapgridCenter - canBuildInImpassable: false - conditions: - - !type:TileNotBlocked + canBuildInImpassable: true - type: construction id: CurtainsBlack @@ -748,9 +746,7 @@ state: closed objectType: Structure placementMode: SnapgridCenter - canBuildInImpassable: false - conditions: - - !type:TileNotBlocked + canBuildInImpassable: true - type: construction id: CurtainsBlue @@ -765,9 +761,7 @@ state: closed objectType: Structure placementMode: SnapgridCenter - canBuildInImpassable: false - conditions: - - !type:TileNotBlocked + canBuildInImpassable: true - type: construction id: CurtainsCyan @@ -782,9 +776,7 @@ state: closed objectType: Structure placementMode: SnapgridCenter - canBuildInImpassable: false - conditions: - - !type:TileNotBlocked + canBuildInImpassable: true - type: construction id: CurtainsGreen @@ -799,9 +791,7 @@ state: closed objectType: Structure placementMode: SnapgridCenter - canBuildInImpassable: false - conditions: - - !type:TileNotBlocked + canBuildInImpassable: true - type: construction id: CurtainsOrange @@ -816,9 +806,7 @@ state: closed objectType: Structure placementMode: SnapgridCenter - canBuildInImpassable: false - conditions: - - !type:TileNotBlocked + canBuildInImpassable: true - type: construction id: CurtainsPink @@ -833,9 +821,7 @@ state: closed objectType: Structure placementMode: SnapgridCenter - canBuildInImpassable: false - conditions: - - !type:TileNotBlocked + canBuildInImpassable: true - type: construction id: CurtainsPurple @@ -850,9 +836,7 @@ state: closed objectType: Structure placementMode: SnapgridCenter - canBuildInImpassable: false - conditions: - - !type:TileNotBlocked + canBuildInImpassable: true - type: construction id: CurtainsRed @@ -867,9 +851,7 @@ state: closed objectType: Structure placementMode: SnapgridCenter - canBuildInImpassable: false - conditions: - - !type:TileNotBlocked + canBuildInImpassable: true - type: construction id: CurtainsWhite @@ -884,9 +866,7 @@ state: closed objectType: Structure placementMode: SnapgridCenter - canBuildInImpassable: false - conditions: - - !type:TileNotBlocked + canBuildInImpassable: true - type: construction id: Bookshelf diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/bc_corpo_jacket.rsi/equipped-OUTERCLOTHING.png b/Resources/Textures/Clothing/OuterClothing/WinterCoats/bc_corpo_jacket.rsi/equipped-OUTERCLOTHING.png deleted file mode 100644 index 5eadcdc1c1ab3fbd2bf67c5055286b407e2e4a60..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9460 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 diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_bishop_cybernetics.rsi/equipped-OUTERCLOTHING.png b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_bishop_cybernetics.rsi/equipped-OUTERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..35003686d555624fcac17b387f726605cd147bd7 GIT binary patch literal 10509 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/bc_corpo_jacket.rsi/icon.png b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_bishop_cybernetics.rsi/icon.png similarity index 100% rename from Resources/Textures/Clothing/OuterClothing/WinterCoats/bc_corpo_jacket.rsi/icon.png rename to Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_bishop_cybernetics.rsi/icon.png diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/bc_corpo_jacket.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_bishop_cybernetics.rsi/meta.json similarity index 100% rename from Resources/Textures/Clothing/OuterClothing/WinterCoats/bc_corpo_jacket.rsi/meta.json rename to Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_bishop_cybernetics.rsi/meta.json diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_cybersun.rsi/equipped-OUTERCLOTHING.png b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_cybersun.rsi/equipped-OUTERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..fe470b0074272a504eac30798883e5e2c6c5e027 GIT binary patch literal 9875 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/cs_corpo_jacket.rsi/icon.png b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_cybersun.rsi/icon.png similarity index 100% rename from Resources/Textures/Clothing/OuterClothing/WinterCoats/cs_corpo_jacket.rsi/icon.png rename to Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_cybersun.rsi/icon.png diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/cs_corpo_jacket.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_cybersun.rsi/meta.json similarity index 100% rename from Resources/Textures/Clothing/OuterClothing/WinterCoats/cs_corpo_jacket.rsi/meta.json rename to Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_cybersun.rsi/meta.json diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_discount_dans.rsi/equipped-OUTERCLOTHING.png b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_discount_dans.rsi/equipped-OUTERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..06932fff6fa7370f5410813dea7991e4cf15cae8 GIT binary patch literal 10492 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 literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/dd_corpo_jacket.rsi/icon.png b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_discount_dans.rsi/icon.png similarity index 100% rename from Resources/Textures/Clothing/OuterClothing/WinterCoats/dd_corpo_jacket.rsi/icon.png rename to Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_discount_dans.rsi/icon.png diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/dd_corpo_jacket.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_discount_dans.rsi/meta.json similarity index 100% rename from Resources/Textures/Clothing/OuterClothing/WinterCoats/dd_corpo_jacket.rsi/meta.json rename to Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_discount_dans.rsi/meta.json diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_einstein_engines.rsi/equipped-OUTERCLOTHING.png b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_einstein_engines.rsi/equipped-OUTERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..553d9e2f64723d236c10d8feeb56c23836529b00 GIT binary patch literal 9782 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 LZBvHT-ot+bfr+RI literal 0 HcmV?d00001 diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/ee_corpo_jacket.rsi/icon.png b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_einstein_engines.rsi/icon.png similarity index 100% rename from Resources/Textures/Clothing/OuterClothing/WinterCoats/ee_corpo_jacket.rsi/icon.png rename to Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_einstein_engines.rsi/icon.png diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/ee_corpo_jacket.rsi/meta.json b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_einstein_engines.rsi/meta.json similarity index 100% rename from Resources/Textures/Clothing/OuterClothing/WinterCoats/ee_corpo_jacket.rsi/meta.json rename to Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_einstein_engines.rsi/meta.json diff --git a/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_five_points_armory.rsi/equipped-OUTERCLOTHING.png b/Resources/Textures/Clothing/OuterClothing/WinterCoats/corpo_jacket_five_points_armory.rsi/equipped-OUTERCLOTHING.png new file mode 100644 index 0000000000000000000000000000000000000000..19b5dc75afffdae7d345415572ef0d33fb92b869 GIT binary patch literal 10959 zcmeHNcU)7+_P_LE0TmS$0Z|tO11Xdw0#OkaT|ns~$c7XQEkHtz5WB0QtOc7E8!XUZX*M$>;i6P}liPBOZg2kc4J|Ydk1uP*(xhbWmtVrsgUF z_1B=tPktv>LC{Wc_vO0D%6gk7S|5ef$6&#DB-#*syve9ZIm`JQ3@B=qM7LdHGtemWjyquhzf`Yu_OqE$PXUv$nXzn~Em8FX{)R!(+ zQ`20budS)IdbygKj>)RkNR*+Wp@ufj42w3^#~7l;Oe7Q(6lTttsXA+xDtejPGW4JR zzz?B0@?x2!B(xyOITBKHB;coz29Q%mV)8Qu1>8$YNz2H}$tx(%00cS8Voga&N=wPe zNK1p>NYD>S&yktC47E;n-gcs#R-g)c->D?|-kX4N9>R}z06KSbM_GUg%_F+?RW zv@7K|!bi@8+;~mnp(A|G1p!a*Wl3L8Iitr+x7{vyW$FA7>n+D-T->?*WQB&HXqF5jrS)~G@1EB0(gJPaLj$V#?+ZT?#u45f58-`Gm$I_K)$VAidt3$dl^mRb8V4f&}(9abWx{B!X&o zJlj*(>4Y95-|gM?43m&VO5I>jW5S#C>Q_t|mF;W46{q4uNo>E!WTEzpfqO6{+tp^? zQjv8T=WsgODa9r*Rh{M=!8us45{Be+8wizAmHf+z1Eti){KE36k#@Jkrvg8O^YpvA zdt+QXh7IQW4sd?M09BOQrsf2U2N(C6d>rZ>&YD=Mcs6hj|5z>O1EVFQB6D53K7Y6; z|5C)Sal&gKqXeY`gA=&&z}{}R;Ab5ENnRpoXuyFbPcKxw&r@NSrcNlq5GAW1YO%h4 zI&ZK}4Xd`{eynz`Euzlm@e_f^D`9W!N787h7j8s7w#v;dd`Xmh9e0mIbxj8h&BJ_v zp{L0L9x!{L#CwOd51&XYxlq{H{fUCV^>iyQPIsrCN7aW3DHuX23A|wFj+#T@3fhxY*?9(ROQ{CK!M^a~7al#`KoGn$HQN*uCH2+r8ZjT0!-N3d7_GEG% z<>R<{Lm8ta%+A)-|&HH#^AuFqGhim8q z9^afh#9mXz?e8uoNOkUrWec{7F0fm8LhqiEZLwDCt`DwcWxQ!A?N`3GDAnAl+skKU z)>hGuC_=^UEPc}x9R04gBHivXZoTourI5BFA8otH1m{KN>}!4pQgt1cFZxtF7C+i? zD&yy~?fI$n7mL*;VCei2;T;&N%Q)CiKgelbAkY}6*GE-yL_2(ef8Xae3H9ht9&q0j zRSHfB_%Ni7iWabHQjhy`npX)ldd!g9hp z521HcpLv?_5|HujSb|sFgiEmri&eWRH`_HO-2FqgUv!Iw(iVfuu4bWQ>T$q8&L>D z3UWd`41KT_vvo|+SVBUKsq$~8nWtP+N%Ry_lTK&YxTm|y`T zbq|YXWvV;e;AAh4o3-EJ+N;L8Pv^h}>f=om zvL6yMf2!h-Xm~Xa_&1&$&Ajf&cT^E9a!T#~shQK2r)xhQeUYEUq_}4ZV+)>fVzBE=K`O5cXs#HWBoA> zU$pu6b;_!A8&AYEm~xwZ>tdSA8Hs)Av1WxObt8K&<&uh4Wg{uTx&9#8$>4zw`cOuM z|0!Wos|e%@busV2aJF~-Wo*p8c7v~7N@zN5FX)g ziWBfm%D8>q#i*W0p9@8|1R8OIGQr>kwiqQcG6JdLeM(+?RrLF73zO`Q>D)N+hxu&g zn>WHcuY|2-=Rs5lJAvZr-=%WQngts5BCp;(*?JmJCb#8Gnq90_PzeJcyIlUh)hEwy z>D#w#%(ugJ6Q3O`fFVp2`+#b(nXn_Zj@=;CO}7J?9O9YcvB1{juZw>tv|Vamo?s*I zjQ`t_vUM(;}oWW*!KAz!|TFtJ}tbNHgMJ-W%BNb|REBD@W-jn